数据库hang住如何收集信息
数据库hang的时候,建议尽量收集以下信息:
1.hanganalyze和systemstate dumps
2.AWR报告
3.最近的RDA
如果是CDB环境,要确认是CDB级别的hang还是PDB级别的hang。如果是PDB级别的hang,只需要收集PDB的信息。如果无法确认,建议收集一下CDB的信息。
hanganalyze:确认数据库是否真的hang或只是运行慢。提供了hang涉及的所有进程信息。
systemstate dump:收集数据库中所有进程正在做什么。
如果不能登陆,使用sqlplus -prelim '/as sysdba'登陆
从11.2.0.2起,使用"sqlplus -prelim"登陆后,hanganalyze不再有内容输出,因为需要一个进程状态对象和一个会话状态对象。所以执行hanganalyze分析后,只是显示执行成功。如下示例:
SQL> oradebug hanganalyze 3
Statement processed.
并且trace文件中会包含以下内容:
HANG ANALYSIS: ERROR: Can not perform hang analysis dump without a process state object and a session state object.
( process=(nil), sess=(nil) )
1.非RAC环境
执行hanganalyze分析(有时候可能只是运行较慢,并非hang了,所以键值执行两次hanganalyze)
sqlplus '/as sysdba'
oradebug setmypid
oradebug unlimt
oradebug hanganalyze 3 #level 3表示收集hang chain中涉及的所有进程的栈信息
--等一分钟后再次执行hanganalyze分析
oradebug hanganalyze 3
oradebug tracefile_name
执行systemstate dump分析
sqlplus '/as sysdba'
oradebug setmypid
oradebug unlimit
oradebug dump systemstate 266
oradebug dump systemstate 266
oradebug tracefile_name
通常是hanganalyze和systemstate dump一起做:
sqlplus '/as sysdba'
oradebug setmypid
oradebug unlimt
oradebug hanganalyze 3
--等一分钟后再次执行hanganalyze分析
oradebug hanganalyze 3
oradebug dump systemstate 266
oradebug dump systemstate 266
oradebug tracefile_name
2.RAC环境
在RAC环境,会在每个实例的diag trace目录下创建dump文件
RAC10G,使用setmypid
sqlplus '/as sysdba'
oradebug setmypid
oradebug unlimit
oradebug -g all hanganalyze 3
oradebug -g all hanganalyze 3
oradebug -g all dump systemstate 258
oradebug -g all dump systemstate 258
在RAC11G环境,因为有两个bug(bug 11800959 、bug 11827088),导致执行hanganalyze和systemstate dump时,使用266、267级别时成本很高。所以在没有安装这两个补丁前,建议慎用。在11.2.0.3中补丁已被修复。
RAC11G,如果已经安装了上面的两个补丁:
sqlplus '/as sysdba'
oradebug setorapname reco
oradebug unlimit
oradebug -g all hanganalyze 3
oradebug -g all hanganalyze 3
oradebug -g all dump systemstate 266
oradebug -g all dump systemstate 266
RAC11G,如果没有安装了上面的两个补丁:
sqlplus '/as sysdba'
oradebug setorapname reco
oradebug unlimit
oradebug -g all hanganalyze 3
oradebug -g all hanganalyze 3
oradebug -g all dump systemstate 258
oradebug -g all dump systemstate 258
数据库hang住如何收集信息的更多相关文章
- NDMCDB数据库hang住故障分析 - cursor: pin S wait on X
问题描写叙述: 上午刚刚到办公室,就有监控人员邮件反馈,昨晚NDMCDB407数据库被重新启动过,让我分析一下数据库重新启动的原因.因为昨晚业务有版本号上线,所以短信警告关闭了,所以没有短信下发到我手 ...
- 一次数据库hang住的分析过程
现象: 普通用户和sysdba都无法登陆,业务中断 分析过程: 1.先做hanganalyze和systemstate dump $sqlplus -prelim "/as sysdba&q ...
- 数据库hang住 处理过程
当数据库出现严重的性能问题或者hang了的时候,我们非常需要通过systemstate dump来知道进程在做什么,在等待什么,谁是资源的持有者,谁阻塞了别人.在出现上述问题时,及时收集systems ...
- 配置闪回恢复区开启归档,未配置清理归档脚本,数据库hang住
问题现象,测试环境执行SQL hang住 enmo:/home/oracle/worksh dg.sh SQL*Plus: Release Production on Mon May :: Copyr ...
- delete删除数据造成归档日志增加,操作系统空间不足导致数据库hang住
业务需求,对日志表历史数据进行清理.历史表均很大,使用delete 操作删除90天前的数据. 第一部分:快速删除数据 SQL> alter table CC.F_LOG parallel ; S ...
- 如何诊断oracle数据库运行缓慢或hang住的问题
为了诊断oracle运行缓慢的问题首先要决定收集哪些论断信息,可以采取下面的诊断方法:1.数据库运行缓慢这个问题是常见还是在特定时间出现如果数据库运行缓慢是一个常见的问题那么可以在问题出现的时候收集这 ...
- 转://11g之后,通过v$wait_chains视图诊断数据库hang和Contention
1g之前,通常我们数据库hang住了之后,我们会对数据库做hang analyze来进行分析,在11g之后,我们可以通过一个新的视图v$wait_chains来诊断数据库hang和contention ...
- Oracle数据库shutdown immediate被hang住的几个原因
实验操作环境: 操作系统:Red Hat Enterprise Linux ES release 4 (Nahant Update 6) ...
- 数据库开启最小补充日志hang住
一.场景说明: 客户环境需要部署OGG,同事在数据库中执行添加最小补充日志,会话Hang住 二.环境测试 本次测试环境进行模拟,添加最小补充日志的操作,怎么会被Hang住呢? 2.1 模拟会话hang ...
随机推荐
- Memcached 笔记与总结(2)编译 php-memcache 扩展
环境:CentOS 6.6 + Apache 2.2.21 + PHP 5.3.10 php-memcache 是 php 写的 memcached 的客户端,以扩展的形式发布. 对于正在运行的 ph ...
- 总结android项目的基本开发步骤(转帖)
总结android项目的基本开发步骤(转帖) 做了几个android企业应用项目后,总结了项目的基本开发步骤,希望能够交流.一 应用规划: ※确定功能. ※必须的界面及界面跳转的流程. ...
- Ruby--hash
--将hash作为js方法 get_page_top_module('<%=@page_type%>', <%=@location_hash.to_json%>);
- vm设置静态ip
1. 进入虚拟linux系统中,vim /etc/sysconfig/network-scripts/ifcfg-eth0,里面保留以下内容即可: DEVICE=eth0 //使用的网卡标识 BOOT ...
- svn 入门
SVN版本:1.5 及更新版本 名词说明: WC:Working Copy 你的工作区 Versioned:受控的:受版本控制的 SVN是什么? SVN是开源的版本控制系统. 比CVS更多的特性.一个 ...
- .Net 2.0自带的Json序列化、反序列化方法
public class JsonUtil { public static T DeserializeObject<T>(string json) { ...
- BLE 4.0 与 4.1的区别
蓝牙技术让我们在连接各种设备的时候不再被繁多的数据线所束缚,比如音响.电脑,甚至是汽车.目前最新的蓝牙版本是4.0,相比3.0它进一步降低了功耗,并且也提高了传输效率.近日,蓝牙技术联盟(Blueto ...
- ECharts SSH+JQueryAjax+Json+JSP将数据库中数据填充到ECharts中
本文引用自:http://blog.csdn.net/ArcticFoxHan/article/details/38071641 1.导入包,搭建SSH框架 导入Jquery的JS包,<sc ...
- sqlserver中常用的全局变量
变量 Transact-SQL语言中有两种形式的变量,一种是用户自己定义的局部变量,另外一种是系统提供的全局变量.局部变量 局部变量是一个能够拥有特定数据类型的对象,它的作用范围仅限制在程序内部.局部 ...
- ecshop支付时减库存方法
ecshop后台减少库存的时机默认只有下订单时和发货时,不能满足各种客户需求啊,要增加一个商家付款后就能减少库存,先解决方法如下 1. includes/inc_constant.php 文件 大约2 ...