errorstack诊断Oracle报错

【问题现象】

Oracle进程异常或者ORA_报错,需要对进程收集errorstack。

【处理方法】

  1. 进程异常

SQL> oradebug setospid

SQL> oradebug unlimit

SQL> oradebug dump errorstack 3

等待几分钟

或者手动做一些操作

SQL> oradebug dump errorstack 3

SQL> oradebug tracefile_name

打印出文件名

2. ORA_报错

- 例如报错ORA_13559

SQL> alter system set events '13559 trace name errorstack level 3';

等待系统出现ORA_13559

SQL> alter system set events '13559 trace name errorstack off';

查看trace 文件,查看错误堆栈:在错误信息下面,会有一段以“----- Call Stack Trace -----”开头的错误堆栈。这里列出了所有与错误相关的函数和过程调用,以及它们的参数和返回值,根据出现的更详细的报错进一步分析问题。

说明:

errorstack 3表示生成3级错误堆栈跟踪。

错误堆栈跟踪是一种诊断工具,用于确定Oracle数据库中发生的错误。它提供了有关错误发生时正在执行的进程、会话和SQL语句的详细信息。

posted @ 2023-07-26 16:01  寻梦99  阅读(220)  评论(0)    收藏  举报