ORA-01338: Other process is attached to LogMiner session
Cause: Can not do this when other process is attached to LogMiner session.
Action: None
ORA-01338错误指的是当前有另外一个进程正在绑定到日志管理器会话中,因此无法绑定当前进程。
Oracle官方声明: ORA-01338 indicates that another process has a LogMiner session open and that the attempted operation could not be performed until the existing LogMiner session is closed.
最常见的原因是另外一个会话正在使用DBMS_LOGMNR执行操作,该操作会在数据库中占用LogMiner资源,这时可能会发生ORA-01338错误。
1. 使用V$LOCKED服务视图检查另外一个会话是否正在使用LogMiner。如果存在这样的会话,请记录下它的正在运行的SQL。
2. 使用sqlplus的altersession语句来检查当前的会话是否正在使用LogMiner。ALTER SESSION SET EVENTS ‘logmnr trace name context forever,level 10’;如果在输出中检索到LogMiner SQL,那么当前会话也可能是导致ORA-01338错误的原因。
3. 如果有其他会话正在使用LogMiner,查看此会话的状态。可以使用V$SESSION_LONGOPS视图,这样可以有效地查看LogMiner的进度。如果进度条表明,该LogMiner操作几乎完成,那么等待它完成,然后重新尝试当前会话上的操作。
4. 如果其他会话在使用LogMiner,且无法等待它完成,可以杀掉该进程来释放资源,然后重新尝试当前会话上的操作。