在oracle数据库hang的情况下,我们可以用sqlplus -prelim / as sysdba登录数据库,进行一些收集信息的操作,也可以进行shutdown database的操作。这里需要注意几点:
1. process满是可以用sqlplus -prelim / as sysdba登录的
2. 从11.2.0.2开始,sqlplus -prelim / as sysdba是不能收集hanganalyze的信息,即使hanganalyze命令运行成功,但是在trace文件中看不到对应的信息,只能看到如下的报错:
1 2 |
ERROR: Can not perform hang analysis dump without a process state object and a session state object. ( process=(nil), sess=(nil) ) |
3. sqlplus -prelim / as sysdba可以收集process state dump,system state dump,dump errorstack,short_stack的操作。
参考:How to Collect Diagnostics for Database Hanging Issues (Doc ID 452358.1)