20 DBVERIFY: オフライン・データベース検査ユーティリティ
DBVERIFYは外部コマンドライン・ユーティリティで、物理データ構造に対する整合性チェックを実行します。
DBVERIFYは、オフラインまたはオンライン・データベースおよびバックアップ・ファイル上で使用できます。DBVERIFYを使用するのは、バックアップ・データベース(またはデータ・ファイル)をリストアする前にそれが有効であることを確認する場合です。また、データ破損の問題が発生した場合に診断機能としても使用します。DBVERIFYはオフライン・データベースに対して実行できるため、整合性チェックが非常に高速に行えます。
DBVERIFYによるチェックは、キャッシュ管理(データ・ブロック)ブロックのみに制限されています。DBVERIFYは、データ・ファイルでのみ使用します。制御ファイルまたはREDOログに対しては機能しません。
DBVERIFYには、2つのコマンドライン・インタフェースがあります。最初のインタフェースでは、確認の対象として単一データ・ファイルのディスク・ブロックを指定します。次のインタフェースでは、確認の対象としてセグメントを指定します。いずれのインタフェースでも、最初にdbv
コマンドを記述します。次の項では、これらのインタフェースの記述について説明します。
- DBVERIFYを使用した単一データ・ファイルのディスク・ブロックの検査
このモードでは、DBVERIFYによって、単一データ・ファイルの1つ以上のディスク・ブロックがスキャンされ、ページのチェックが実行されます。 - DBVERIFYを使用したセグメントの検査
このモードでは、表セグメントまたは索引セグメントをDBVERIFYの検査対象に指定できます。
親トピック: その他のユーティリティ
20.1 DBVERIFYを使用した単一データ・ファイルのディスク・ブロックの検査
このモードでは、DBVERIFYによって、単一データ・ファイルの1つ以上のディスク・ブロックがスキャンされ、ページのチェックが実行されます。
検査するファイルが、Oracle Automatic Storage Management (Oracle ASM)ファイルである場合、USERID
を指定する必要があります。DBVERIFYでOracle ASMファイルにアクセスするには、Oracleインスタンスに接続する必要があるためです。
- 単一ファイルのブロックを検査する際のDBVERIFY構文
単一ファイルのブロックを検査するためのDBVERIFY
の使用方法。 - 単一ファイルのブロックを検査する際のDBVERIFYパラメータ
単一ファイルのブロックの検査に使用するDBVERIFYのパラメータについて説明します。 - 単一データ・ファイルに対するDBVERIFYの出力例
単一データ・ファイルの検査例。
20.1.1 単一ファイルのブロックを検査する際のDBVERIFY構文
DBVERIFY
を使用した単一ファイルのブロックの検査。
単一データ・ファイルのディスク・ブロックを検査するときに使用するDBVERIFY
の構文は次のとおりです。
20.1.2 単一ファイルのブロックを検査する際のDBVERIFYパラメータ
単一ファイルのブロックを検査するために使用するDBVERIFYのパラメータについて説明します。
例:
パラメータ | 説明 |
---|---|
|
ユーザー名およびパスワードを指定します。 このパラメータは、検査するファイルがOracle ASMファイルである場合にのみ必要です。 このパラメータを指定する場合、ユーザー名とパスワードの両方を入力する必要があります。そうしない場合、 |
|
検査するデータベース・ファイル名。 |
|
検査する最初のブロック・アドレス。ブロック・アドレスは、Oracleブロックで指定します(オペレーティング・システム・ブロックではありません)。 |
|
検査する最後のブロック。 |
|
|
|
このパラメータは省略可能です。デフォルトはありません。 |
|
ログ情報を書き込むファイルを指定します。デフォルトでは、端末画面への出力となります。 |
|
DBVERIFYによって進捗画面が端末に表示され、DBVERIFYの実行中に検証されたページ数 |
|
オンライン・ヘルプを表示します。 |
|
使用するパラメータ・ファイルの名前を指定します。DBVERIFYパラメータの様々な値をフラット・ファイルに格納できます。これにより、パラメータ・ファイルをカスタマイズして様々なタイプのデータ・ファイルを処理したり、特定のタイプの整合性チェックをデータ・ファイルに対して実行できます。 |
20.1.3 単一データ・ファイルに対するDBVERIFYの出力例
単一データ・ファイルに対する確認例。
次に、ファイルt_db1.dbf
の検査の例を示します。フィードバック・パラメータに100が指定されているため、100ページの処理が行われるたびにピリオドが1つ表示されます。出力結果の一部も示します。
% dbv FILE=t_db1.dbf FEEDBACK=100 . . . DBVERIFY - Verification starting : FILE = t_db1.dbf ................................................................................ DBVERIFY - Verification complete Total Pages Examined : 9216 Total Pages Processed (Data) : 2044 Total Pages Failing (Data) : 0 Total Pages Processed (Index): 733 Total Pages Failing (Index): 0 Total Pages Empty : 5686 Total Pages Marked Corrupt : 0 Total Pages Influx : 0
ノート:
-
Pages = ブロック
-
Total Pages Examined =ファイルのブロック数。
-
Total Pages Processed = 検査されたブロック数(書式化されたブロック)。
-
Total Pages Failing (Data) = データ・ブロック・チェック・ルーチンで違反したブロック数。
-
Total Pages Failing (Index) = 索引ブロック・チェック・ルーチンで違反したブロック数。
-
Total Pages Marked Corrupt = キャッシュ・ヘッダーが無効で、DBVERIFYがブロック型を識別できないブロック数。
-
Total Pages Influx = 読取りおよび書込みが同時に行われるブロック数。DBVERIFYの実行時にデータベースがオープンされている場合は、一貫性を維持したイメージの取得のためにDBVERIFYによってブロックが複数回読み込まれます。ただし、データベースがオープンされているため、読取りおよび書込みが同時に行われるブロックがあります(INFLUX)。DBVERIFYでは、絶え間なく変化するページの一貫性のあるイメージは取得できません。
20.2 DBVERIFYを使用したセグメントの検査
このモードでは、DBVERIFYを使用して表セグメントまたは索引セグメントの検査を指定できます。
確認中のセグメントに行連鎖ポインタがあることを確認します。
このモードでは、検査するセグメント(データ・セグメントまたは索引セグメント)を指定する必要があります。また、セグメントについての情報をデータベースから取得するため、SYSDBA
権限でデータベースにログインする必要があります。
このモードでは、セグメントはロックされます。1つの索引セグメントを指定する場合、親表はロックされます。IOTなど、一部の索引には親表はありません。
- セグメントを検査する際のDBVERIFY構文
セグメントを検証するためのDBVERIFYの使用方法。 - 単一のセグメントを検査する際のDBVERIFYパラメータ
単一のセグメントを検査するために使用するDBVERIFYのパラメータについて説明します。 - 検査対象のセグメントに対するDBVERIFYの出力例
検査対象のセグメントの検査例。
20.2.1 セグメントを検査する際のDBVERIFY構文
DBVERIFYを使用したセグメントの検査。
セグメントを検査するときのDBVERIFY
の構文は次のとおりです。
親トピック: DBVERIFYを使用したセグメントの検査
20.2.2 単一のセグメントを検査する際のDBVERIFYパラメータ
単一セグメントを検査するために使用するDBVERIFYのパラメータについて説明します。
例:
パラメータ | 説明 |
---|---|
|
ユーザー名およびパスワードを指定します。ユーザー名とパスワードの両方を入力しない場合、エラー コンテナ・データベース(CDB)に接続する場合は、username@cdbname/passwordと入力します。 |
|
検査するセグメントを指定します。このパラメータは、表領域ID番号( |
|
このパラメータは省略可能です。デフォルトはありません。 |
|
ログ情報を書き込むファイルを指定します。デフォルトでは、端末画面への出力となります。 |
|
DBVERIFYによって進捗画面が端末に表示され、DBVERIFYの実行中に検証されたページ数 |
|
オンライン・ヘルプを表示します。 |
|
使用するパラメータ・ファイルの名前を指定します。DBVERIFYパラメータの様々な値をフラット・ファイルに格納できます。これにより、パラメータ・ファイルをカスタマイズして様々なタイプのデータ・ファイルを処理したり、特定のタイプの整合性チェックをデータ・ファイルに対して実行できます。 |
親トピック: DBVERIFYを使用したセグメントの検査
20.2.3 検査対象のセグメントに対するDBVERIFYの出力例
検査対象のセグメントに対する検査例。
次の出力例は、SEGMENT_ID
1.2.67を検査するDBVERIFY操作で表示されるものです。
DBVERIFY - Verification starting : SEGMENT_ID = 1.2.67 DBVERIFY - Verification complete Total Pages Examined : 8 Total Pages Processed (Data) : 0 Total Pages Failing (Data) : 0 Total Pages Processed (Index): 1 Total Pages Failing (Index): 0 Total Pages Processed (Other): 2 Total Pages Processed (Seg) : 1 Total Pages Failing (Seg) : 0 Total Pages Empty : 4 Total Pages Marked Corrupt : 0 Total Pages Influx : 0 Highest block SCN : 7358 (0.7358)
親トピック: DBVERIFYを使用したセグメントの検査