ORA-00106: cannot startup/shutdown database when connected to a dispatcher ORACLE 报错 故障修复 远程处理
文档解释
ORA-00106: cannot startup/shutdown database when connected to a dispatcher
Cause: An attempt was made to startup/shutdown database when connected to a shared server via a dispatcher.
Action: Re-connect as user INTERNAL without going through the dispatcher. For most cases, this can be done by connect to INTERNAL without specifying a network connect string.
官方解释
ORA-00106 is an information message that is raised when a user process has detected a deadlock or other time-out condition.
ORA-00106表示当用户进程检测到死锁或其他超时条件时,抛出此信息。
常见案例
1、在Oracle数据库中同时有多个用户执行更新操作,而且其中一个更新操作长时间未被提交,就会导致其他用户尝试更新该行时发生死锁,从而引发ORA-00106错误。
2、如果Oracle数据库更新操作存在多种排序、索引等特性,如果存在大量更新操作,会导致多个用户同时在多个表上更新它们关联行,从而引发死锁,从而引发ORA-00106错误。
正常处理方法及步骤
1、查询哪些sqlsid or serial发生死锁,可以使用“select bloc* from v$session”来查看。
2、发现死锁的sqlsid or serial之后,尝试终止掉这些进程,使用“alter system kill session ””来终止进程,将死锁释放。
3、使用“analyze table