如何处理HANG住的DB
来源:互联网 发布:2017机顶盒破解软件 编辑:程序博客网 时间:2024/05/17 05:03
如何处理HANG住的DB
1. 生成 systemstate dump:
SQL>sqlplus -prelim / as sysdba
SQL> alter session set max_dump_file_size = unlimited;
SQL> alter session set events 'immediate trace name systemstate level 10';
Wait for some 30 seconds
SQL> alter session set events 'immediate trace name systemstate level 10';
Wait for some 30 seconds
SQL> alter session set events 'immediate trace name systemstate level 10;
2. 开一个新的SESSION:
SQL>sqlplus -prelim / as sysdba
SQL>oradebug setmypid
SQL>oradebug unlimit;
SQL>oradebug dump hanganalyze 3
Wait for 30 seconds
SQL>oradebug dump hanganalyze 3
Wait for 30 seconds
SQL>oradebug dump hanganalyze 3
对生成的文件进行分析。
附:system state dump when connection to the instance is not possible
There are several ways of getting more information when connection to an instance is not possible by sqlplus. It is useful to collect as much information about a hang before clearing the instance.
1.) Using OS debuggers like dbx or gdb.
For example:
$ps -ef |grep $ORACLE_SID ## Use PID of any User Process instead of BG Process
$gdb $ORACLE_HOME/bin/oracle <PID_from_earlier_step>
print ksudss(10)
The systemstate dump will be in the bdump or udump depending on the PID chosen
2.) Using the new 10.1 sqlplus -prelim option.
For example:
export ORACLE_SID=PROD ## Replace PROD with the SID you want to trace
sqlplus -prelim / as sysdba
oradebug setmypid
oradebug unlimit;
oradebug dump systemstate 10
3.) Finally if either option (1) or (2) is not doable, please remember to take stacks of all the Oracle Background process using pstack or gdb
For example:
script stack.log
pstack <pid_of_pmon>
pstack <pid_of_smon>
4.) Finally you may also want to collect some truss, tusc or strace of sqlplus
Note: The recommended systemstate level for 10g is 266
1. 生成 systemstate dump:
SQL>sqlplus -prelim / as sysdba
SQL> alter session set max_dump_file_size = unlimited;
SQL> alter session set events 'immediate trace name systemstate level 10';
Wait for some 30 seconds
SQL> alter session set events 'immediate trace name systemstate level 10';
Wait for some 30 seconds
SQL> alter session set events 'immediate trace name systemstate level 10;
2. 开一个新的SESSION:
SQL>sqlplus -prelim / as sysdba
SQL>oradebug setmypid
SQL>oradebug unlimit;
SQL>oradebug dump hanganalyze 3
Wait for 30 seconds
SQL>oradebug dump hanganalyze 3
Wait for 30 seconds
SQL>oradebug dump hanganalyze 3
对生成的文件进行分析。
附:system state dump when connection to the instance is not possible
There are several ways of getting more information when connection to an instance is not possible by sqlplus. It is useful to collect as much information about a hang before clearing the instance.
1.) Using OS debuggers like dbx or gdb.
For example:
$ps -ef |grep $ORACLE_SID ## Use PID of any User Process instead of BG Process
$gdb $ORACLE_HOME/bin/oracle <PID_from_earlier_step>
print ksudss(10)
The systemstate dump will be in the bdump or udump depending on the PID chosen
2.) Using the new 10.1 sqlplus -prelim option.
For example:
export ORACLE_SID=PROD ## Replace PROD with the SID you want to trace
sqlplus -prelim / as sysdba
oradebug setmypid
oradebug unlimit;
oradebug dump systemstate 10
3.) Finally if either option (1) or (2) is not doable, please remember to take stacks of all the Oracle Background process using pstack or gdb
For example:
script stack.log
pstack <pid_of_pmon>
pstack <pid_of_smon>
4.) Finally you may also want to collect some truss, tusc or strace of sqlplus
Note: The recommended systemstate level for 10g is 266
0 0
- 如何处理HANG住的DB
- DB2数据库HANG住的时候应该收集什么数据以及如何处理
- PL/SQL 包编译时hang住的处理
- PL/SQL 包编译时hang住的处理
- Oracle shutdown 过程中 DB hang住 解决方法
- 【问题处理】数据库的hang死进程
- 使用hanganalyze诊断db hang
- 如何处理高并发情况下的DB插入
- 如何处理高并发情况下的DB插入
- 如何处理高并发情况下的DB插入
- 如何处理高并发情况下的DB插入
- 记一次数据库无法增删改趋于HANG住状态的故障诊断和处理
- 一次挂死(hang)的处理过程及经验
- Oracle 配监听 hang 住的问题
- 重现Oracle数据库Hang住的情况
- 误用autocommit引起的业务hang住
- 误用autocommit引起的业务hang住
- 因为numa引发的mysqldump hang住
- NumPy 数组1
- HTML+CSS结构中IE6BUG全集及解决方案
- NumPy 数组2
- 2013长春区域赛小结
- openssl mac
- 如何处理HANG住的DB
- Jsoup学习之Jsoup类
- 高效整洁CSS代码原则
- map的两种遍历方式和区别。
- c++ stirng的使用
- 使用ssh的时候会出现下面的提示: Address 192.168.1.2 maps to localhost, but this does not map back to the address
- Android XML文件使用
- Swap Nodes in Pairs
- DRM 分析及案例讲解