Oracle 使用 ass.awk 工具查看 system state dump 说明
来源:互联网 发布:淘宝优惠券微信群 编辑:程序博客网 时间:2024/06/17 19:35
转自http://blog.csdn.net/tianlesoftware/article/details/7237729
如果Oracle数据库hang住了,对Oracle做system dump,或做 hang analyze,是研究和解决问题的有效办法。如果能够连接数据库,并能够进行操作,那么用oradebug是简单快捷的办法。 OracleHANGANALYZE 功能诊断 DBhanginghttp://blog.csdn.net/tianlesoftware/article/details/6321961 Oracleoradebug 命令 使用说明http://blog.csdn.net/tianlesoftware/article/details/6525628 SYS@anqing1(rac1)> oradebug setmypidStatement processed.SYS@anqing1(rac1)> oradebug dump systemstate 10Statement processed.SYS@anqing1(rac1)> oradebug tracefile_name/u01/app/oracle/admin/anqing/udump/anqing1_ora_8725.trcSYS@anqing1(rac1)> oradebug close_traceStatement processed. 在系统hung的时候,systemstate基本等同于hanganalyze,可以用于诊断system hung。但是如果直接来查看这个trace file,比较麻烦,这时候可以使用ass.awk 脚本来帮助我们查看trace file。 Ass.Awk 脚本在LTOM的ltom431\ltom\tom_base\tom\src目录下,其名称是:ass109.awk。这个是目前的最新版本,ass.awk 脚本可以帮助我们分析和格式化system state dump。 LTOM的MOS说明:LTOM - TheOn-Board Monitor User Guide [ID 352363.1] LTOM 的下载地址:http://download.csdn.net/detail/tianlesoftware/4047944 在看AWK, awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。 关于AWK的更多内容参考:Linux awk 命令 说明http://blog.csdn.net/tianlesoftware/article/details/6278273 我们这里使用的是AWR命令的 -fscripfile 参数,即从脚本文件中读取awk命令。这个脚本就是我们LTOM中的ass109.awk。 示例:[oracle@rac1 src]$ awk -f ass109.awk /u01/app/oracle/admin/anqing/udump/anqing1_ora_8725.trc Starting Systemstate 1...................................Ass.Awk Version 1.0.9 - Processing/u01/app/oracle/admin/anqing/udump/anqing1_ora_8725.trc System State 1~~~~~~~~~~~~~~~~1: 2: waiting for 'pmon timer' wait3: waiting for 'DIAG idle wait' wait4: waiting for 'rdbms ipc message' wait5: waiting for 'rdbms ipc message' wait6: waiting for 'ges remote message' wait7: waiting for 'gcs remote message' wait8: waiting for 'rdbms ipc message' wait9: waiting for 'rdbms ipc message' wait10: waiting for 'rdbms ipc message' wait11: waiting for 'rdbms ipc message' wait12: waiting for 'buffer busy waits'(2,89,21) wait13: waiting for 'rdbms ipc message' wait14: waiting for 'enq: JS - queue lock'[Enqueue JS-00000000-00000001] wait15: waiting for 'buffer busy waits'(2,89,21) wait16: waiting for 'rdbms ipc message' wait17: 18: 19: waiting for 'rdbms ipc message' wait20: waiting for 'log file switch (archivingneeded)' wait21: waiting for 'ASM background timer' wait22: waiting for 'rdbms ipc message' wait23: waiting for 'log file switch (archivingneeded)' wait24: last wait for 'SQL*Net message fromclient'25: for 'Streams AQ: waiting for messagesin the queue' wait26: waiting for 'Streams AQ: qmn slave idlewait' wait27: waiting for 'rdbms ipc message' wait28: waiting for 'rdbms ipc message' wait29: waiting for 'class slave wait' wait30: 31: waiting for 'Streams AQ: qmncoordinator idle wait' wait32: waiting for 'SQL*Net message fromclient' wait34: waiting for 'SQL*Net message fromclient' wait36: waiting for 'jobq slave wait' wait37: for 'Streams AQ: waiting for timemanagement or cleanup tasks' waitBlockers~~~~~~~~ Above is a list of all the processes. If they are waiting for a resource then it will be given in square brackets. Below is a summary of the waited upon resources, together with the holder of that resource. Notes: ~~~~~ o A process id of '???' implies that the holder was not found in the systemstate. Resource Holder StateEnqueue JS-00000000-00000001 23: waiting for 'log file switch (archivingneeded)' Object Names~~~~~~~~~~~~Enqueue JS-00000000-00000001 48768 Lines Processed.[oracle@rac1 src]$ 这个使用ass.awk 处理之后的结果就直接查看trace 直观很多:[oracle@rac1 src]$ head -100/u01/app/oracle/admin/anqing/udump/anqing1_ora_8725.trc /u01/app/oracle/admin/anqing/udump/anqing1_ora_8725.trcOracle Database 10g Enterprise EditionRelease 10.2.0.4.0 - ProductionWith the Partitioning, Real ApplicationClusters, OLAP, Data Miningand Real Application Testing optionsORACLE_HOME =/u01/app/oracle/product/10.2.0/db_1System name: LinuxNode name: rac1Release: 2.6.18-194.el5Version: #1 SMP Tue Mar 16 21:52:43 EDT 2010Machine: i686Instance name: anqing1Redo thread mounted by this instance: 1Oracle process number: 24Unix process pid: 8725, image: oracle@rac1(TNS V1-V3) *** 2012-02-06 20:32:20.758*** ACTION NAME:() 2012-02-06 20:32:20.755*** MODULE NAME:(sqlplus@rac1 (TNS V1-V3))2012-02-06 20:32:20.755*** SERVICE NAME:(SYS$USERS) 2012-02-0620:32:20.755*** SESSION ID:(118.34295) 2012-02-0620:32:20.755===================================================SYSTEM STATE------------System global information: processes: base 0x30e0ec78, size 150, cleanup 0x30e1dff8 allocation: free sessions 0x30e5a6c4, free calls (nil) control alloc errors: 0 (process), 0 (session), 0 (call) PMON latch cleanup depth: 0 seconds since PMON's last scan for dead processes: 64 system statistics:313621 logons cumulative30 logons current14842838 opened cursors cumulative…. -------------------------------------------------------------------------------------------------------
阅读全文
0 0
- Oracle 使用 ass.awk 工具查看 system state dump 说明
- Oracle 使用 ass.awk 工具查看 system state dump 说明
- Oracle 9i&10g可用的ass.awk
- Oracle dump undo 说明
- Oracle dump undo 说明
- class-dump工具使用
- awk使用实例说明
- 使用awk来解析dump文件
- android arm linux下使用内存转储crash工具分析 kernel system dump问题
- awk工具使用
- awk工具的使用
- Oracle Dump Redo Log File 说明
- Oracle Dump Redo Log File 说明
- Oracle Dump Redo Log File 说明
- oracle dump文件说明--未发生迁移
- class-dump工具的使用
- 如何在oracle 使用 dump
- Oracle SYSTEM表空间说明
- Vagrant和virtualbox安装问题总结
- Android简单实现实时监听网络状态
- 感知器数据分类算法
- ServletContextListener使用详解
- C语言学习1:Windows搭建C语言开发环境,Code::Blocks安装,配置gcc编译器
- Oracle 使用 ass.awk 工具查看 system state dump 说明
- Receiver not registered 报错处理
- 开源评测系统hustoj-代码解读 及 快速安装
- 应聘那点事儿
- MDP
- @JoinTable和@JoinColumn
- HTTPS握手异常:Received fatal alert: handshake_failure
- Unity3D导出exe窗口参数调整
- MATLAB定义随机矩阵