Email: service@parnassusdata.com 7 x 24 online support!
关于Oracle数据库问题诊断信息获取
在对Oracle数据库相关情况及问题进行诊断及信息捕获时, 请:
- 请确认MAX_DUMP_FILE_SIZE 参数设置, 这将避免用以诊断的追踪文件(trace file)因为空间不足而被截断 !!!
-
上传alert.log文件。11g中,文本形式的alert.log是放在ADR home相应”trace”目录下。而XML形式的alert.log则是放在ADR home下的”alert”目录下。如需验证ADR home确切位置,可以执行”select * from v$diag_info” 并从其输出中找到。
请看下页诊断追踪文件目录地址信息。
- 获取RDA收集信息 (版本4.2x以上更佳). 请查看MOS文档 330363.1 及 314422.1以了解更多信息。 parnassusdata.com
- 请对所遇问题提供详尽描述以便于分析并更快找到问题原因。
对于 严重性为 1级 和2级事务, 请提供:
- 相关业务及技术评估
- 两名24x7联系人,并提供相关人员邮件及电话联系方式。
- 一名相关管理联系人,需提供其邮件及电话联系方式。
问题细节描述:
- 受影响日期时间
- 相关报错号及其文本信息。
- 相关问题影响 – 数据库实例奔溃, 进程失败等.?
- 错误出现频率?
- 错误是否可重演。
- 错误是否总在特定日期时间发生?
- 错误发生是否与数据库相关活动有关?如备份或高负载处理时.
- 错误是否总是来自于某个应用或某位用户?
- 第一次产生此错误是在何时?当时是否正在做何改动?
- 当时是否有其他错误发生(例如ORA-7445 或 ORA-600错误)?
- 最近系统是否有任何改变?
- 如果你还不确定set events操作会带何种影响,请不要设置。
- 随着Oracle 11g诊断追踪文件默认地址的改变。下表展示了以前(10g以及之前版本)和最新11g(ADR)的跟踪文件目录位置。
诊断追踪文件目录地址
诊断数据文件 |
之前版本文件路径 |
ADR中文件路径 |
Foreground process traces |
USER_DUMP_DEST |
$ADR_HOME/trace |
background process traces |
BACKGROUND_DUMP_DEST |
$ADR_HOME/trace |
Alert log data |
BACKGROUND_DUMP_DEST |
$ADR_HOME/alert&trace |
Core dumps |
CORE_DUMP_DEST |
$ADR_HOME/cdump |
Incident Dumps |
USER|BACKGROUND_DUMP_DEST |
$ADR_HOME/incident/incdir_n |
Oracle数据库11g并没有对前台和后台追踪文件做区分。两种类型文件都放在$ADR_HOME/trace目录下。
- 请注意BDE及其开发需要11g 漏洞的IPS打包服务. 在11g中IPS(Incident Packaging Service事件打包服务) 提供了一种对诊断信息打包的简便方法。
所有数据库事件(严重错误)的跟踪文件都被存储在Oracle自动诊断库(Automatic Diagnostic Repository: ADR)中。其提供的ADRCI工具被用于打包所有文件并上传给Oracle支持。从OEM中也能找到IPS相关链接服务。请参考以下文档了解更多相关信息:
Note:422893.1 - 11g Understanding Automatic Diagnostic Repository.
Note:443529.1 - 11g Quick Steps to Package and Send Critical Error
Note:1091653.1 - 11g Quick Steps - How to create an IPS package using Support Workbench
并非11g中所有问题都需生成诊断包. 但对于以下相关11g错误及SR应该考虑获取相关诊断包。 parnassusdata.com
Manageability:
ORA-600 & ORA-7445
ORA-4030 & ORA-4031
DB Admin:
ORA-600, ORA-700 & ORA-7445
HA:
ORA-600 & ORA-7445
ORA-8103 - Object no longer exists
ORA-1410 - Invalid ROWID
ORA-1578 - Oracle data block corruption
ORA-376 - File cannot be read at this time
ORA-353 - There is a log corruption near a block, change, and time
以下是一个例子 à
客户看见alert.log中出现以下错误:
Errors in file d:\oracle\diag\rdbms\twn11g\twn11g1\trace\twn11g1_ora_201116.trc:
ORA-00600: internal error code, arguments: [17099], [], [], [], [], [], [], [], [], [], [], []
Errors in file d:\oracle\diag\rdbms\twn11g\twn11g1\trace\twn11g1_ora_201116.trc (incident=19569):
ORA-00600: internal error code, arguments: [17099], [], [], [], [], [], [], [], [], [], [], []
Incident details in: d:\oracle\diag\rdbms\twn11g\twn11g1\incident\incdir_19569\twn11g1_ora_201116_i19569.trc
...因此我们看见事件号为 19569.
在正确设置11g环境变量后,通过ADRCI(命令)进入IPS打包处理服务:
% adrci
因为我们已经知道事件号为19569,那执行下一步:
adrci> ips pack incident 19569
…这样就在当前目录下建立了zip压缩包.如果你希望压缩包保存在其它目录中, 那么可以在命令后加上路径信息:
adrci> ips pack incident 19569 in D:/tmp/whatever
此命令会提示信息产生了包含事件号19569相关信息的IPS打包文件。这个zip压缩文件之后需要被上传到SR上。