My Oracle Support Banner

マスターノート: Oracle データベースの破損問題の対処 (Doc ID 1635747.1)

Last updated on SEPTEMBER 28, 2020

適用範囲:

Oracle Database Backup Service - バージョン N/A 以降
Oracle Database - Enterprise Edition - バージョン 9.2.0.8 以降
Oracle Database Cloud Schema Service - バージョン N/A 以降
Oracle Database Exadata Cloud Machine - バージョン N/A 以降
Oracle Cloud Infrastructure - Database Service - バージョン N/A 以降
この文書の内容はすべてのプラットフォームに適用されます。

本文書利用上のご注意


  本文書は英語で提供されている Document 1088018.1 (最終更新日: 2017年01月24日) の翻訳です。

  ご利用に際しては、英語の原文を併せてご参照頂くことをお勧めいたします。

詳細

この記事の目的は、破損エラーと破損個所に応じた適切な対処方法についての全体像を提供することです。

以下のサポート Note に加えて、追加の情報をここで得ることができます。: My Oracle Support Comunity

ここに含まれている情報は製品管理者向けです。

一般的なエラーはエラー番号をクリックすることによって、そのエラーまたはその破損の種類に関係する Note のみを表示することが可能です。

アクション

破損の説明

破損とは
<Note 2234872.1> : ブロックの物理的破損と論理的破損について

破損したブロックを強制再フォーマットする方法
<Note 1993821.1> : どのセグメントにも属していない破損ブロックをフォーマットする方法
データベースの破損の特定方法
<Note 1671172.1> : RMAN でデータベース内の全ての破損オブジェクトを特定する方法
<Note 1924804.1> : ORA-1578/RMAN/DBVERIFYによって報告された破損オブジェクトの識別方法

OS/HW の問題による既知の破損
<Note 1323649.1> : Known Corruption issues caused by 3rd party Software Provider

破損の種類

破損したセグメント

セグメント破損の対処方法 (表, 索引, LOB, Long, IOT, Temporary)  ブロック破損が影響しているデータベース・セグメントを参照してください。
<Note 428526.1> : Baddata Script To Check Database For Corrupt column data

制御ファイル破損

<Note 2540196.1> : OERR: ORA-00227 制御ファイルで破損ブロックが検出されました: (ブロック %s, # ブロック %s) マスターノート / トラブルシューティング, 診断および解決策

UNDO 破損

<Note 1950230.1> : Solving UNDO Corruption
<Note 281429.1> : Basic Steps to be Followed While Solving ORA-00600 [4194]/[4193] Errors Without Using Unsupported parameter
<Note 39283.1 >: ORA-600 [4194] "Undo Record Number Mismatch While Adding Undo Record"
<Note 2485538.1> : 新しいUNDO表領域に切り替える方法について

TEMPORARY(一時)

<Note 1332088.1> : How to clear a block corruption in a TEMPORARY segment
<Note 422039.1> : Steps to drop a temporary segment while SMON is not able

パッケージ情報および例

DBMS_REPAIR

<Note 2234853.1> : DBMS_REPAIRスクリプト
<Note 68013.1>: DBMS_REPAIR example

DBMS_METADATA

<Document 2474361.1> DBMS_METADATA.GET_DDL を使用した索引の DDL の抽出
<Note 394143.1> : Q How Could I Format The Output From Dbms_metadata.Get_ddl Utility?
<Note 332077.1> : Why Does DBMS_METADATA.GET_DDL Not Show All Lines?
<Note 1960018.1> : オブジェクトの DDL を取得するための DBMS_METADATA の使用

ツール

DBV

<Note 35512.1> : DBVERIFY - Database file Verification Utility (7.3.2 - 10.2)
<Note 269028.1> : DBV Reports Corruption Even After Drop/Recreate Object
<Note 1993821.1> : どのセグメントにも属していない破損ブロックをフォーマットする方法

EXPORT

<Note 214369.1> : Using The Export Utility To Check For Database Corruption

RMAN

<Note 1671172.1> : RMAN でデータベース内の全ての破損オブジェクトを特定する方法

トランスポータブル表領域

<Note 2540171.1> : TTS (トランスポータブル表領域) を使用したデータベースの再作成方法

データ・リカバリ・アドバイザ

<Note 1610426.1> : [マスターノート] Oracle データ・リカバリ・アドバイザ(DRA)

ORA600/7445 エラー・ルックアップ・ツール

<Note 1929264.1> : ORA-600/ORA-7445/ORA-700 エラー検索ツール

一般的なリンク

パッチ・セット・アップデート (PSU) & クリティカル・パッチ・アップデート (CPU)

<Note 268895.1> : Oracle Database Server Patchset Information, Versions: 8.1.7 to 11.2.0
<Note 1061295.1> : Patch Set Updates - One-off Patch Conflict Resolution
<Note 161549.1> : Oracle Database, Networking and Grid Agent Patches for Microsoft Platforms
<Note 1745092.1> : Database Proactive Patch Program のマスター・ノート -- Oracle Database
<Note 2413744.1> : 現在のデータベース・リリースのリリース・スケジュール
<Note 161818.1> : Oracle Database (RDBMS) Releases Support Status Summary

一般的なエラー

ORA-1578

ORA-1578 データブロックは破損していることを示します。これは 物理破損 です。また、メディア破損とも言います。原因は不明ですが、ほとんどの場合データベース外の要因です。 ORA-26040が発生している場合は、破損は NOLOGGING or UNRECOVERABLE 操作 によるものです。

ORA-1410

このエラーは表の ROWID を参照した際にその行がない場合に発生します。
ROWID への参照は、WHERE CURRENT OF 句または、直接 WHERE ROWID=... 句で指定します。
ORA-1410 は ブロックの ROWID はこの表の一部ではないことを示します。

ORA-8103

オブジェクトが操作が開始してから別のユーザーによって削除されています。例: その SQL 文がまだアクティブな間に、別のセッションでそのセグメントを trancate または drop を行った。
エラーが再現する場合は、以下の理由が考えられます。:-
a.) ヘッダー・ブロックが不正なタイプになっている。
b.) ブロック内の data_object_id (seg/obj) がセグメント・ヘッダーの data_object_id と異なっている。dba_objects.data_object_id を確認し、それをブロック内の10進の値(seg/obj)と比べてください。

ORA-8102

ORA-08102 は索引内のキーと表内の値が不整合であることを示します。一般的に、索引が構築後に何らかの破損が表または索引で発生し、不整合の原因になります。

ORA-1498

一般的にこれは ANALYZE ... VALIDATE ... コマンドの結果です。
通常このエラーはデータおよび索引のブロックに矛盾がある場合に発生します。ブロック・チェックでいくつかのエラーが見つかった場合です。:-
a.) 行が存在しないトランザクションによってロックされている。
b.) 使用される容量がブロック・サイズと等しくない。
c.) トランザクション・ヘッダーのロック・カウントの不整合
サポートがトレース・ファイルを調査している間に、破損が一貫性なのか一過性なのかを確認するために、データベースを再起動した後に再度 ANALYZE を実行することは価値があります。
調査のためにサポートにトレース・ファイルを送ってください。
索引に対する ANALYZE の場合は、すべてのオブジェクトを確認する必要があります。例: 表の名前を確認し、次を実行します。:
     ANALYZE TABLE xxx VALIDATE STRUCTURE CASCADE;

ORA-1499

このエラーは ANALYZE コマンドを使用して索引または表を検査した際に発生します。
一つ以上のエントリが適切に相互参照していません。
ORA-752 メディア・リカバリでデータ・ブロックの書き込みが失われたことが検出されました プライマリ・データベース上の通常のデータベース操作中に、ストレージへのデータ・ブロック書き込みが失われました。

ORA-26040

NOLOGGING/ UNRECOVERABLE オプションを使用して、REDO 生成することなくロードされたブロック内のデータにアクセスしようとしています。
このエラーは ORA-1578 と共に発生します。

ORA-600 [12700]

Oracle は索引から取得した ROWID を使用して行にアクセスしようとしています。
索引の ROWID とそれが指し示すデータ・ブロックとの間で不整合が見つかった場合に発生します。ROWID がデータ・ブロックには存在しない行を指し示しています。破損はデータまたは索引で発生しています。
ORA-600 [12700] は読み取り一貫性(CR) の問題でも発生します。

ORA-600 [3020]

これは、'STUCK RECOVERY' が呼び出されました。
REDO にある情報とリカバリするデータベース・ブロックにある情報との間に不整合があります。
コノエラーは書き込みのロスト、データベース内の変更のロストを示します。

ORA-600 [4194]

REDO レコードとロールバック(UNDO)レコードの間に不整合が検知されました。
Oracle は UNDO ブロック内の最大 UNDO レコード番号に対して適用される変更に関連する UNDO レコード番号を検証します。
このエラーはこの検証が失敗した際に発生します。

ORA-600 [4193]

REDO レコードとロールバック(UNDO)レコードの間に不整合が検知されました。
Oracle は UNDO ブロック内の UNDO ブロックのシーケンス番号を適用される変更に関連する REDO ブロックのシーケンス番号に対して検証します。
このエラーはこの検証が失敗した際に発生します。

ORA-600 [4137]

UNDO レコードのバック・アウト中(例: ロールバック時) に、ロールバック・セグメント内の破損またはロールバック・セグメントが UNDO レコードを適用しようとしているオブジェクト内の破損を示す、トランザクション ID の不整合が見つかりました。
これはロールバック・セグメントの破損を示します。

ORA-600 [6101]

UNDO の適用中に行を索引のリーフ・ブロックに挿入する際に、空き領域が不十分であることが検出されました。

ORA-600 [2103]

Oracle は制御ファイル内の標準エントリを読み込みまたは更新することを試みます。
エントリ番号が不正な場合に ORA-600 [2130] が発生します。

ORA-600 [4512]

Oracle はブロック内のトランザクション・ロック数を確認します。
ロック数がロック・エントリの数より大きい場合に、ORA-600 [4512] がスタック・トレース、プロセスステート、ブロック・ダンプと共に発生します。
このエラーはブロック破損の可能性があります。

ORA-600 [2662]

データ・ブロック SCN がカレント SCN を超えています。
SCN がそのデータベース SCN に近いプロセスによって識別された依存 SCN と比較された場合に発生します。
SCN が依存 SCN より小さい場合に、ORA-600 [2662] 内部エラーが発生します。

ORA-600 [4097]

Oracle はトランザクションがコミットされているかどうかを確認するためにロールバック・セグメント・ヘッダーにアクセスします。xid がトランザクション・テーブルの未来になっています。
これはロールバック・セグメントの破損の問題が原因である可能性があります。

ORA-600 [4000]

Oracle がデータディクショナリに UNDO セグメント番号を見つけようとした際に、この UNDO セグメント番号が見つからなかったことを意味します。

ORA-600 [6006]

Oracle は索引のリーフ・キー操作を元に戻しています。キーが見つからない場合に、ORA-00600 [6006] が発生します。ORA-600[6006] は通常、ディスクへの書き込み損失またはディスク上の破損のいずれかに関連するメディア破損の問題が原因で発生します。

ORA-600 [4552]

Oracle がブロック内の行をアンロックしようとした際に、不正なブロック・タイプを受け取った場合に発生します。
2番目の引数は受け取ったブロック・タイプです。

ORA-600[6856]

Oracle は解放しようとしている行のスロットを確認していますが、それはすでにフリー・リストにない場合に発生します。
この内部エラーはこの確認が失敗した際に発生します。

ORA-600[13011]

Oracle が削除処理中、instead-of トリガー経由か索引構成表経由でビューから削除されており、 5000 パス・カウントを超えました。

ORA-600[13013]

UPDATE 文の実行中、何度かの試みの後(引数[a]がパス・カウント)WHERE 句に準拠している行の安定したセットを取得することができませんでした。

ORA-600[13030]

 

ORA-600[25012]

Oracle が表領域番号、相対ファイル番号から絶対ファイル番号を生成しようとし該当するファイル番号を見つけることができなかった場合やそのファイル番号が 0 であった場合に発生します。

ORA-600[25026]

表領域を確認し、不正な表領域番号または rdba が見つかりました。

ORA-600[25027]

不正な tsn または rfn が見つかりました。

ORA-600 [kcbz_check_objd_typ_3]

メモリ内のオブジェクト・ブロック・バッファがチェックされ、不正なオブジェクトID が見つかった場合に発生します。これは破損が原因である可能性が高いです。

ORA-600[kddummy_blkchk] & ORA-600[kdblkcheckerror]

ORA-600[kddummy_blkchk] は 10.1/10.2 で、
ORA-600[kdblkcheckerror] は 11 以降で発生します。

ORA-600[ktadrprc-1]

孤立セグメントまたは索引、表。パーティションの不正な rdba。例:sys.ind $のエントリはsys.seg $に存在しません
<Note 2231001.1> : hcheck.sql - 既知の問題をチェックするスクリプト - Oracle8i, Oracle9i, Oracle10g, Oracle 11g, Oracle 12c 向け

ORA-600[ktsircinfo_num1]

hcheck.sql - 既知の問題をチェックするスクリプト - Oracle8i, Oracle9i, Oracle10g, Oracle 11g, Oracle 12c 向け

ORA-600[qertbfetchbyrowid]

このエラーは索引に行が見つからなかった場合に発生する可能性があります。以下の"Identify TABLE / INDEX Mismatch"セクションを参照してください。

<Note 2475455.1> : ブロック破損、表/索引の不整合、データ・ディクショナリおよび書込みの欠落(lost write)の破損を特定する

ORA-600[ktbdchk1-bad dscn]

この例外は、依存 SCN にサニティ・チェックを実行し、失敗した場合に発生します。
依存 SCN がカレント SCN により大きい場合に発生します。



 


Document History
10-Jun-2010 Add references and correct some links.
07-Sep-2010 Renew links.
01-Oct-2010 Change the type to Announcement.
01-Oct-2010 Add History section.
01-Oct-2010 Add reference to Master Notes 1101938.1, 1116484.1 and 1138253.1
02-Oct-2010 Add new reference "Controlfile Corruption" Note 1072762.6
20-Oct-2010 Add new reference to note 1159443.1
04-Nov-2010 Include content of note 463479.1
22-Nov-2010 Add reference to note 1266059.1
19-Jan-2011 Add reference to note 1263374.1
09-Mar-2011 Add reference to note 268895.1
23-Mar-2011 Add reference to note 794772.1
20-Apr-2011 Add references to notes 1291877.1 ( April 2011 CPU and PSU)
20-Apr-2011 Add references to note 579256.1
29-Apr-2011 Add Data Recovery Advisor to Tools Section.
20-May-2011 Add section "Known Corruptions Caused by OS/HW"
28-May-2011 Add reference to note 1302539.1
25-Jun-2011 Add reference to note 1332088.1
18-Aug-2011 Add reference to note 1342443.1
03-Sep-2011 Add reference to note 1323616.1
13-Sep-2011 Complete change of the Master Note structure
22-Sep-2011 Add reference to note 1578.1
07-Oct-2011 Add reference to note 161549.1
18-Nov-2011 Add reference to error kdblkcheckerror
18-Nov-2011 Remove broken links
12-Jan-2012 Add reference to note 1392417.1
12-Jan-2012 Add reference to note 742060.1
04-Feb-2012 Add reference to note 161818.1
01-May-2012 Add reference to note 422039.1
12-Dec-2012 Add reference to note 428526.1
03-Mar-2013 Remove JS of the note and rewrite the note
05-Mar-2013 Remove broken links
05-Mar-2013 Add reference to note 472231.1
24-Jan-2017 Content was modified for the majority of the errors to include more references / details


コンタクト

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


本書の内容
詳細
アクション
 破損の説明
 破損の種類
 セグメント破損の対処方法
 パッケージ情報および例
 ツール
 一般的なリンク
 一般的なエラー
コンタクト
参照情報

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.