Database Console Command CHECKDB (DBCC CHECKDB) is used to check integrity (physical & logical) of objects in SQL Server database.The command is supported in database that contains memory-optimized tables but validation is only supported in disk-based table.The コマンドは、メモリ最適化テーブルがあるデータベースでサポートされていますが、検証は、ディスクベースのテーブルでのみサポートされています。 DBCC repair オプションは、メモリ最適化テーブルでは使用できないため、定期的なデータベースバックアップが必要になります。メモリ最適化テーブルで問題が発生した場合、最後に実行したバックアップからデータを復元することができます。
CHECKDB によって実行されるさまざまな操作は次のとおりです。
- DBCC CHECKALLOC は SQL データベース上で実行します。
- DBCC CHECKTABLE は SQL データベース上のそれぞれのテーブルおよびビュー上で実行します。
- ファイルディレクトリとテーブルメタデータの間のリンクレベルの一貫性の検証。
- サービスブローカーデータの検証。
DBCC CHECKDB Syntax
上記の構文で使用する引数は、以下を意味します:
database_name | database_id | 0 これは、データベースの名前です。 NOINDEX クラスタ化されていないインデックス・テーブルの整合性チェックを行わないことを指定します。 この構文は、テーブルに存在するデータには影響を与えません。 REPAIR_ALLOW_DATA_LOSS この構文は、データベースで発見されたエラーを修復します。
注意: この構文は Microsoft によってサポートされていますが、毎回、データベースを良好な物理状態にするための理想的なソリューションであることが証明されるわけではありません。 これは、破損していることが判明したデータ全体を削除し、元々データベースに対して行われたよりも多くのデータ損失を引き起こす可能性があるため、最後の手段として採用されるべきです。 REPAIR REBUILD この引数は、データ損失の恐れのない、より速い修復処理を含みます。 ALL_ERRORMSGS これは、すべてのオブジェクトで生成されたすべてのエラーを表示します。 エラーメッセージは通常オブジェクトIDでソートされるため、この構文を含めても除いても効果はありません。 生成されるエラーメッセージの最大数は、1000に達することがあります。 EXTENDED_LOGICAL_CHECKS この引数は、互換性レベルが100である場合にのみ、ビューとインデックスの論理的整合性チェックを実行します。 NO_INFOMSGS すべての情報メッセージを削除します。 TABLOCK この構文は、データベースに対する排他ロックを取得し、高負荷時のデータベースに対する DBCC CHECKDB の速度を向上させます。 しかし、同時処理に対するデータベースの可用性を低下させます。 ESTIMATEONLY これは、CHECKDBコマンドを実行するためにデータベースが必要とするスペースの量を指定または推定します。 PHYSICAL_ONLY これは、データベースの物理構造のみをチェックするための制限をかけます。 物理的なデータベースの短いオーバーヘッド・チェックは、破れたページ、障害、およびユーザーが直面する一般的な問題の検出を伴います。 DATA PURITY この構文は、範囲外または有効でないカラム値をチェックします。 列値の整合性チェックはデフォルトで有効になっており、DATA_PURITY構文は必要ありません。
留意点
- 無効なインデックスは DBCC CHECKDB でチェックできません。
- DBCC CHECKDB を実行する必要がある場合、ユーザー定義型およびバイト順序型はシリアライズする必要があります。 1549>
Error Messages Generated By DBCC CHECKDB
CHECKDBコマンドの実行が終了すると、メッセージがSQLエラーログに書き込まれます。 成功した場合、成功とコマンドの実行時間の合計を示すメッセージが生成されます。 失敗した場合は、何らかのエラーが発生したため処理を終了し、その旨がメッセージで表示されます。 エラーメッセージを表す様々な状態値は次の通りです:
Error Report
CHECKDBコマンドで破損を検出するたびにSQLDUMPNNNN.txtというダンプファイルがSQLサーバーのログディレクトリに作成されるようになりました。 SQLでFeature Usage Data CollectionとError Reportingが有効になっている場合、エラーレポートは改善のためにMicrosoftに送信されます。 しかし、REPAIR_ALLOW_DATA_LOSS で修復を選ぶと、いくつかの data.
Alternative Resolution For Database Recovery
Basically the DBCC CHECKDB command checks the consistencies of the database, including physical or logical.DECKDB コマンドは、データベースの整合性をチェックします。 このコマンドは、ページ、インデックス、およびSQL Serverデータベースのいくつかの他のコンポーネントを確認しますが、いくつかの重要なポイントで、このオプトインは、SQLデータベースを回復するために拒否する。 MS SQLサーバのデータベースのバックアップがない場合には、最適化された修復オプションは、データの整合性と妥協せずにデータベースを回復するために、あなたは、Microsoft SQLデータベースの回復ソリューションを選ぶことができる、data.Hereのかなりの量を削除することができます。 彼らは、データの任意の量を削除することなく、データベースの完全な回復を保証します。