数据库hang
分析(sql*plus
不能登陆)
状态转储的常用命令
当数据库出现一些挂起状态时,往往会严重的影响数据库使用,进程级的问题影响范围小,而系统级的问题则会影响全局。
当数据库系统或进程失去响应事,如果SQL*Plus 工具仍然可以连接,可能试图查询没有相应,但是可以通过oradebug 工具来经行进程及系统状态信息的转储,从而可以进行HANG 分析
Sql*plus 可以连接数据库时
DUMP 进程状态可以使用:
Alter
sessions set events ‘immediate trace name processstate level
或者使用:
Oradebug setmypid
Oradebug ulimit
Oradebug
dump processstate
如果为了获取全面的一点的信息,可以使用level 10
Sql*plus 不可以连接数据库时(10g 之后)
sqlplus -prelim '/ as sysdba '
Oradebug setmypid
Oradebug unlimit
Oradebug dump systemstate 10
Hanganalyze 产生trace 文件方法
--For 单实例
SQL> oradebug hanganalyze 3;
Hang Analysis in /u01/app/oracle/admin/rac/udump/dave1_ora_20962.trc
这个命令会提示我们生成的trace 文件。
--For RAC
SQL> oradebug setmypid
Statement processed.
SQL> oradebug setinst all
Statement processed.
SQL> oradebug -g def hanganalyze 3;
Hang Analysis in /u01/app/oracle/admin/rac/bdump/dave1_diag_32435.trc
转载:
http://www.eygle.com/archives/2011/05/dbasystem_state_file.html
转载: http://blog.csdn.net/tianlesoftware/article/details/6321961
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26442936/viewspace-774223/ ,如需转载,请注明出处,否则将追究法律责任。