DBCC CHECKDB SQL Serverデータベースの破損のトラブルシューティング
概要: DBCC CHECKDB, DBCC, データベース修復, データベース, 破損したデータベース
この記事は次に適用されます:
この記事は次には適用されません:
この記事は、特定の製品に関連付けられていません。
すべての製品パージョンがこの記事に記載されているわけではありません。
現象
トピック: MS SQL Serverデータベースが破損しており、安定性と整合性を維持するために修復する必要があります。
原因
MS SQL Serverデータベース、ログ、アプリケーション ファイルへのソフトウェア破損。
解決方法
DBCCは、Microsoft SQL Serverデータベースのチェックと修復を目的として設計されたMicrosoft SQL Serverのネイティブ ツールです。 この文書では、DBCC CHECKDBコマンドと、データベースの論理および物理整合性をチェックする際のオプションについて説明します。
DBCC CHECKDB(Transact-SQL):
DBCC CHECKDBを実行する手順:
- SQL Server Studio管理を開く
- クエリ ウィンドウを開く
- 「DBCC CHECKDB (Database Name)」と入力します。

4.クエリ結果の下部近くで、割り当てエラーと整合性エラーを確認します。
5. 割り当てと整合性エラーが結果に表示される場合は、データベースをバックアップからリストアするか、DBCC CHECKDBを使用してデータベース修復を実行する必要があります。
DBCC修復オプション
- REPAIR_REBUILD: 次のコマンドを実行すると、データベースが修復可能なモードになります。
USE Master; GO ALTER DATABASE TSQL2012 SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO DBCC CHECKDB (TSQL2012, REPAIR_REBUILD) GO ALTER DATABASE TSQL2012 SET MULTI_USER; GO
次のコマンドをコピーし、正しいデータベース名を入力してクエリー セッションに貼り付けます。
--Command below performs a Database repair not allowing Data loss USE Master; GO ALTER DATABASE TSQL2012 SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO DBCC CHECKDB (TSQL2012,REPAIR_REBUILD) GO ALTER DATABASE TSQL2012 SET MULTI_USER; GO
2.REPAIR_ALLOW_DATA_LOSS: 以下のコマンドを実行すると、データベースの修復が実行され、修復プロセスを完了するためにデータが失われる可能性があります。
--Command below performs a database repair that may result in data loss, --replace TSQL2012 with the database name of database being repaired USE Master GO ALTER DATABASE TSQL2012 SET SINGLE_USER WITH ROLLBACK IMMEDIATE GO DBCC CHECKDB (TSQL2012, REPAIR_ALLOW_DATA_LOSS) GO ALTERDATABASE TSQL2012 SET MULTI_USER GO
次のコマンドをコピーし、正しいデータベース名を入力してクエリー セッションに貼り付けます。
次のコマンドは、データベースの物理ディスク領域が不足している場合に便利です。
--Command below estimates the size TEMPDB must be to complete the DBCC CHECKDB job USE Master; GO ALTER DATABASE TSQL2012 SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO DBCC CHECKDB (TSQL2012, REPAIR_REBUILD) WITH ESTIMATEONLY; GO ALTER DATABASE TSQL2012 SET MULTI_USER GO
次のコマンドをコピーし、正しいデータベース名を入力してクエリー セッションに貼り付けます。
--Command below estimates the size TEMPDB must be to complete the DBCC CHECKDB job USE Master; GO ALTER DATABASE TSQL2012 SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO DBCC CHECKDB (TSQL2012, REPAIR_REBUILD) WITH ESTIMATEONLY; GO ALTER DATABASE TSQL2012 SET MULTI_USER GO
--Command below will run DBCC CHECKDB without using TEMDB and creating a DB --snapshot. When not using TEMPDB with a DB snapshot all data will be checked in -- the live database not not a database snapshot. USE Master; GO ALTER DATABASE TSQL2012 SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO DBCC CHECKDB (TSQL2012, REPAIR_REBUILD) WITH TABLOCK; GO ALTER DATABASE TSQL2012 SET MULTI_USER GO
次のコマンドをコピーしてクエリー セッションに貼り付け、正しいデータベース名を入力します。
--Command below will run DBCC CHECKDB without using TEMPDB and creating a DB --snapshot. When not using TEMPDB with a DB snapshot all data will be checked in ---the live database not a database snapshot. USE Master; GO ALTER DATABASE TSQL2012 SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO DBCC CHECKDB (TSQL2012, REPAIR_REBUILD) WITH TABLOCK; GO ALTER DATABASE TSQL2012 SET MULTI_USER GO

対象製品
Dell Quickstart Data Warehouse Appliance, Prosupport for Microsoft Software文書のプロパティ
文書番号: 000134529
文書の種類: Solution
最終更新: 18 3月 2025
バージョン: 5
質問に対する他のDellユーザーからの回答を見つける
サポート サービス
お使いのデバイスがサポート サービスの対象かどうかを確認してください。