oracle hang分析使用

oracle hang分析测试

javascript 复制代码
使用hang分析大部分原因在于产生锁资源的争用
1-2:只有hanganalyze输出,不dump任何进程
3:Level2+Dump出在IN_HANG状态的进程
4:Level3+Dump出在等待链里面的blockers(状态为LLEAF/LEAF_NW/IGN_DMP)  		
5:Level4+Dump出所有在等待链中的进程(状态为NLEAF);

1.创建测试数据

javascript 复制代码
create table test as  select * from dba_objects;

2.更新表中一条数据但是不提交

javascript 复制代码
update test set object_id=1 where rownum=1;

3.在开启两个会话并重复执行发现会hang住

javascript 复制代码
SQL> update test set  object_id=1 where rownum=1;
SQL> update test set  object_id=1 where rownum=1;

4.开启第四个会话使用 sqlplus -prelim / as sysdba进行登录

javascript 复制代码
<zhang2:orcldb:/home/oracle>$sqlplus -prelim / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Mon Apr 8 10:45:11 2024
Version 19.21.0.0.0

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

SQL> 

5.登录后启动执行oradebug hanganalyze 3

javascript 复制代码
SQL> oradebug setmypid;       
	 Statement processed.             
SQL> oradebug unlimit
Statement processed.
SQL> oradebug hanganalyze 3; 
Statement processed.
SQL> oradebug dump systemstate 10;--执行后alert会显示trc路径
Statement processed.
SQL> oradebug tracefile_name  --显示日志位置
/u01/app/oracle/diag/rdbms/orcldb/orcldb/trace/orcldb_ora_22062.trc
 SQL>oradebug close_trace   --使用后关闭

6.在trc 找相关的有用信息进行相关会话的处理

相关推荐
百***490015 小时前
SQL Server查看数据库中每张表的数据量和总数据量
数据库·sql·oracle
代码or搬砖16 小时前
MyBatisPlus中的常用注解
数据库·oracle·mybatis
盼哥PyAI实验室16 小时前
MySQL 数据库入门第一课:安装、账户、库、表与数据操作详解
数据库·mysql
h***593318 小时前
MySQL如何执行.sql 文件:详细教学指南
数据库·mysql
郑重其事,鹏程万里18 小时前
键值存储数据库(chronicle-map)
数据库·oracle
Doro再努力18 小时前
【MySQL数据库09】外键约束与多表查询基础
数据库·mysql
gkhost18 小时前
Linux基础——Oracle部署
oracle·表空间··instances
ss27318 小时前
019:深入解析可重入互斥锁:原理、实现与线程安全实践
java·数据库·redis
O***Z61619 小时前
三分钟内快速完成MySQL到达梦数据库的迁移
数据库·mysql
友友马20 小时前
『QT』窗口 (一)
开发语言·数据库·qt