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 找相关的有用信息进行相关会话的处理

相关推荐
伤不起bb几秒前
MySQL 故障排查与生产环境优化
数据库·mysql
独行soc25 分钟前
2025年渗透测试面试题总结-安恒[实习]安全服务工程师(题目+回答)
linux·数据库·安全·web安全·面试·职场和发展·渗透测试
Violet_Stray36 分钟前
mac下载、使用mysql
数据库·mysql·macos
liweiweili1261 小时前
解决 MySQL 错误 1356 (HY000)
数据库·mysql
杨凯凡2 小时前
MySQL函数触发:函数处理与触发器自动化应用
数据库·mysql
TDengine (老段)2 小时前
TDengine 在新能源领域的价值
java·大数据·数据库·人工智能·时序数据库·tdengine·涛思数据
镜舟科技2 小时前
时序数据库、实时数据库与实时数仓:如何为实时数据场景选择最佳解决方案?
数据库·物联网·数据分析·时序数据库·olap·实时数仓·实时数据库
麻雀无能为力3 小时前
CAU数据库class2 SQL语言
数据库·sql·oracle
夜松云3 小时前
Qt框架核心组件完全指南:从按钮交互到定时器实现
数据库·qt·交互·信号与槽·ui组件·容器类·定时器机制
Elastic 中国社区官方博客3 小时前
JavaScript 中使用 Elasticsearch 的正确方式,第一部分
大数据·开发语言·javascript·数据库·elasticsearch·搜索引擎·全文检索