您的位置:首页 > 数据库 > Oracle

Oracle hang 之sqlplus -prelim方法

2015-09-16 22:05 519 查看

很多情况下,Oracle hang导致sqlplus无法连接,从而无法获得Oracle系统和进程状态,使得定位问题缺少强有力的依据。
所幸的是Oracle 10g推出了sqlplus -prelim选项,在Oracle挂起时依然能使用sqlplus,从而能获得数据库状态。

使用方法如下

[oracle@HadoopNameNode ~]$ sqlplus -prelim / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Tue
Aug 25 11:06:14 2015

Copyright (c) 1982, 2011, Oracle. All rights
reserved.

SQL>

在prelim模式下,不可以查询数据字典,但可以关闭数据库

SQL> select status from v$instance;

select status from v$instance

*

ERROR at line 1:

ORA-01012: not logged on

Process ID: 0

Session ID: 0 Serial number: 0

关闭数据库

SQL> shutdown abort

ORACLE instance shut down.

对于实例级别hang,通常建议收集如下信息:

[oracle@HadoopNameNode ~]$ sqlplus -prelim / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Tue
Aug 25 11:19:49 2015

Copyright (c) 1982, 2011, Oracle. All rights
reserved.

SQL> oradebug setmypid

Statement processed.

SQL> oradebug dump systemstate 10;

Statement processed.

SQL> oradebug tracefile_name

/home/u01/app/oracle/diag/rdbms/ytzx/ytzx/trace/ytzx_ora_8611.trc

果是rac:

SQL> ORADEBUG setmypid

SQL> ORADEBUG setinst all

SQL> ORADEBUG -g def hanganalyze 266

SQL> oradebug tracefile_name

对于应用hang,建议进行hanganalyze 分析即可 dump hanganalyze

SQL> oradebug setmypid

SQL> oradebug hanganalyze 3

Statement processed.

SQL> oradebug tracefile_name

/home/u01/app/oracle/diag/rdbms/ytzx/ytzx/trace/ytzx_ora_8611.trc

对于rac

SQLPLUS> oradebug setmypid

SQLPLUS>oradebug setinst all

SQLPLUS>oradebug -g def hanganalyze 3

如果sqlplus无法登陆,那么建议进行os层面的数据收集。例如如下:

dbx -a PID (where PID = any oracle
shadow process) ---通过ps -ef|grep xxx查看

dbx() print ksudss(10)

...return value printed here

dbx() detach

hanganalyze有如下几种level

10 Dump all processes (IGN state)

5 Level 4 + Dump all processes
involved in wait chains (NLEAF state)

4 Level 3 + Dump leaf nodes (blockers) in wait
chains (LEAF,LEAF_NW,IGN_DMP state)

3 Level 2 + Dump only processes
thought to be in a hang (IN_HANG state)

1-2 Only HANGANALYZE output, no process
dump at all
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: