用调试工具Dump Oracle系统状态(一)

2014-11-24 17:46:03 · 作者: · 浏览: 0

  但有的时候,数据库由于hang住,sqlplus不能连接时(在10g可以尝试用sqlplus -prelim连接数据库),可以使用操作系统上的调试工具来dump oracle系统状态。因为我的环境是linux,所以我先从gdb来介绍。


  ①首先获得要dump的进程号


  ps -ef | grep LOCAL


  oracle 9015 1 0 12:28 00:00:00 oracleretest (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))


  oracle 9110 8981 0 14:09 pts/4 00:00:00 grep LOCAL


  ②调用gdb进行dump


  gdb $ORACLE_HOME/bin/oracle 9015


  Copyright 2004 Free Software Foundation, Inc.


  GDB is free software, covered by the GNU General Public License, and you are


  welcome to change it and/or distribute copies of it under certain conditions.


  Type “show copying” to see the conditions.


  There is absolutely no warranty for GDB. Type “show warranty” for details.


  Attaching to program: /u01/app/oracle/product/10.1.0/db_1/bin/oracle, process 9015


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libskgxp10.so…(no debugging symbols found)…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libskgxp10.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libhasgen10.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libhasgen10.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libskgxn2.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libskgxn2.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libocr10.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libocr10.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libocrb10.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libocrb10.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libocrutl10.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libocrutl10.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libjox10.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libjox10.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libclsra10.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libclsra10.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libdbcfg10.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libdbcfg10.so


  Reading symbols from /u01/app/oracle/product/10.1.0/db_1/lib/libnnz10.so…done.


  Loaded symbols for /u01/app/oracle/product/10.1.0/db_1/lib/libnnz10.so


  Reading symbols from /usr/lib/libaio.so.1…done.


  Loaded symbols for /usr/lib/libaio.so.1


  Reading symbols from /lib/libdl.so.2…done.


  Loaded symbols for /lib/libdl.so.2


  Reading symbols from /lib/tls/libm.so.6…done.


  Loaded symbols for /lib/tls/libm.so.6


  Reading symbols from /lib/tls/libpthread.so.0…done.


  [Thread debugging using libthread_db enabled]


  [New Thread -1219938624 (LWP 3765)]


  Loaded symbols for /lib/tls/libpthread.so.0


  Reading symbols from /lib/libnsl.so.1…done.


  Loaded symbols for /lib/libnsl.so.1


  Reading symbols from /lib/tls/libc.so.6…done.


  Loaded symbols for /lib/tls/libc.so.6


  Reading symbols from /lib/ld-linux.so.2…done.


  Loaded symbols for /lib/ld-linux.so.2


  Reading symbols from /lib/libnss_files.so.2…done.


  Loaded symbols for /lib/libnss_files.so.2


  0×006967a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2


  (gdb) print ksudss(10)


  [Switching to Thread -1219938624 (LWP 9015)]


  $1 = 213658428


  (gdb) detach


  Detaching from p