Oracleエラー対応(ORA-00600、ORA-07445):ORA-00600、ORA-07445発生時の調査対応について

現役DBAが解説 ~Oracleエラー対応~

Oracleでよく発生するエラーに、ORA-00600とORA-07445と呼ばれる内部エラーがあります。
内部エラーには様々なタイプが含まれているため、詳細調査はサポートへ依頼することが多くなります。

そこで、今回はORA-00600、ORA-07445の概要と、エラー発生時の調査依頼に必要なポイントを解説します。

1. エラーメッセージ

ORA-00600: 内部エラー・コード, 引数: [引数1],[引数2],…

→ DB内で予期しない異常が検知された際に発生します。

ORA-07445: 例外が検出されました: コア・ダンプ [引数1][引数2]…	

→OSがサーバプロセス処理にて予期しない異常を検知した際に発生します。

2. 原因

ORA-00600、ORA-07445には他のORAエラーに区分されない、予期しない異常、つまり内部エラー全般がまとめられているため、様々なエラー原因が存在します。

<原因例>
・メモリ不整合によるエラー
・ブロック情報不整合によるエラー
・製品の不具合によるエラー

3. エラー調査と対応

エラー詳細を確認するには、ORA-00600/ORA-07445の後に記載されている引数を見る必要があります。
(記載されている引数が多い場合は、第2引数まで確認)

ORA-00600/ORA-07445と引数の組み合わせで各種ナレッジが公開されていますが、多くのパターンが存在するため、エラー内容を自己判断するのは少々危険です。
そのため、サポート問い合わせができるのならば、サポートにエラー調査を依頼し原因を特定した上で、解決策を検討することを強くお勧めします。

4. サポート調査依頼時に提供する情報

サポートへ調査依頼を行う際は、下記の情報をまとめてサポートに提供することで、サポートとのやりとり回数が少なくなり調査がスムーズに進みます。

文末に★がついている項目は調査で特に重要となるため、優先して取得しましょう。

  • エラー発生時のアラートログ★
    (エラー発生直前のDB起動~エラー発生までのログがあればなお良い)
  • エラー発生時のトレースファイル★
    (アラートログにファイルパスが記載)
  • コアダンプファイル★
    (出力されている場合のみ、アラートログにファイルパスが記載)
  • エラー発生直前にDB設定変更やリリース作業等を実施していないか
  • エラー発生時間帯に、その他異常(OSエラー、CPU高騰、リソース逼迫など)が発生していないか
  • DBパッチ適用状況
    (エラーが製品不具合に起因している場合は、パッチ適用状況を調べる必要があるため)
  • 特定の操作実行時にエラーが発生すると分かっている場合は、その操作内容が分かるもの
    (SQLやプログラムファイルなど)

5. 最後に

ORA-00600/ORA-07445は、1つの決まった要因によって発生するものではなく、調査が難しい部類のエラーとなります。

DB運用においては、当該エラーが検知された場合は速やかに必要な情報を集めた上でサポートへ調査依頼を行う、といった対応フローを設定しておくと良いでしょう。