errorstack 工具使用介绍
来源:互联网 发布:spss分析数据的步骤 编辑:程序博客网 时间:2024/05/29 01:55
一、概述
在Oracle数据库运行过程中,我们经常会遇到这样或那样的错误,但是错误的提示并不具体,加大了我们在诊断问题时的难度。
ErrorStack是Oracle提供的一种对于错误堆栈进行跟踪的方法,通过设置跟踪可以将一些指定错误的后台信息详细的转储出来,写入跟踪文件,帮助我们诊断问题。
备注:
1、当oracle发生关键的错误诸如:ora-600,Errorstack是自动被oracle dump写入trace文件中。
2、当你在alert.log里面看见这类错误,并提示已经产生trace文件。打开对应的trace后,你会发现这类trace文件一般都是以“ksedmp:internal or fatal error"开头,"kesdmp"意味着Kernel Service Error Dump,这一行下面的内容就是errorstack记录的错误堆栈!
Errorstack dump也可以通过使用Oradebug errorstack 3手工调用,前提是先使用Oradebug setospid设定了目标进程之后。Oradebug Errorstack对于诊断一个session似乎Hang住(但是在v$session_wait里面并未出现合理的wait event)或者是比正常时消耗更多资源时,获取当前session执行sql、具体的变量值等等信息,从而帮助你找到问题根源!
二、跟踪级别和方法
ErrorStack主要有4个跟踪级别,如下
- 0 仅转储错误堆栈
- 1 转储错误堆栈和函数调用堆栈
- 2 Level 1 + ProcessState
- 3 Level 2 + Context area (一般我们诊断问题,都是使用这个级别的跟踪!)
ErrorStack设置方法,如下(仅指定特定的错误代码,只有这个特定的错误出现时才能被触发!)
- 实例级别:alter system set events='984 trace name errorstack forever,level 3' scope=spfile;
- 会话级别: alter session set events='984 trace name errorstack forever,level 3';
- oradebug: 1、oradebug setospid xxxx; 2、oradebug dump errorstack 3 --当前session正在运行的语句
三、ErrorStack启用
使用errorstack步骤:
1. 启用:
SQL> alter system set events='1438 trace name errorstack forever,level 10';
--表示当出现ORA-1438错误时,dump错误栈和进程栈。
--在这里,我们关注哪些错误,就写上对应的代码就ok了。
2. 执行相关的SQL,获取跟踪文件
3. 关闭:
SQL> alter system set events='1438 trace name errorstack off';
或者使用oradebug:
--启用
SQL> oradebug event 1000 trace name errorstack level 10;
Statement processed.
--关闭
SQL> oradebug event 1000 trace name errorstack off;
Statement processed.
阅读全文
0 0
- errorstack 工具使用介绍
- errorstack 工具介绍
- Oracle errorstack 工具 说明
- 使用ERRORSTACK进行错误跟踪及诊断
- 使用errorstack跟踪ORA-01438错误
- 使用ErrorStack进行错误跟踪及诊断
- 使用ErrorStack进行错误跟踪及诊断!
- Oracle ErrorStack 使用和阅读详解
- Oracle ErrorStack 使用和阅读详解
- LaTeX 工具使用介绍
- gprof工具使用介绍
- psutil工具使用介绍
- htk 工具使用介绍
- tcpdump 工具简单使用介绍
- SQLmap工具介绍及其使用
- 端口扫描工具nmap使用介绍
- SQLmap工具介绍及其使用
- 端口扫描工具nmap使用介绍
- 广义动量定理与系统思考——战争、管…
- Datagridview中手动绑定列之后界面显示不一
- 目录
- MySql 5.7 UPDATE 和 DELETE 导致的 error code [1093]
- 《广义动量定理与系统思考----战争…
- errorstack 工具使用介绍
- 线段树——点修改
- 第一章 广义动能定理和系统思考
- Common Subsequence(相同字符的总数dp)
- 1.1.2 兰切斯特第二法则
- 浅谈神经网络反向传播的梯度丢失问题
- 1.1.2.2 兰切斯特第二法则的阐释
- c++多线程实现循环打印ABC
- Ubuntu 16.04 nvidia cuda cudnn tensorflow-gpu 配置