Microsoft SQL Server
DBCC
サーチ…
DBCCメンテナンスコマンド
DBCCコマンドを使用すると、データベース内の領域を維持したり、キャッシュをクリアしたり、データベースやテーブルを縮小したりできます。
例は:
DBCC DROPCLEANBUFFERS
バッファプールからすべてのクリーンバッファを削除し、列ストアオブジェクトプールから列ストアオブジェクトを削除します。
DBCC FREEPROCCACHE
-- or
DBCC FREEPROCCACHE (0x060006001ECA270EC0215D05000000000000000000000000);
プランキャッシュ内のすべてのSQLクエリを削除します。新しいプランがすべて再コンパイルされます:プランハンドル、クエリハンドルを指定して、特定のクエリプランまたはSQLステートメントのプランをクリーンアップすることができます。
DBCC FREESYSTEMCACHE ('ALL', myresourcepool);
-- or
DBCC FREESYSTEMCACHE;
システムによって作成されたすべてのキャッシュエントリを消去します。これは、すべてまたは指定されたリソースプール(上記の例ではmyresourcepool)内のエントリo =を消去できます。
DBCC FLUSHAUTHCACHE
ログインとファイアウォールルールに関する情報を含むデータベース認証キャッシュを空にします。
DBCC SHRINKDATABASE (MyDB [, 10]);
データベースMyDBを10%に縮小します。 2番目のパラメータはオプションです。名前の代わりにデータベースIDを使用できます。
DBCC SHRINKFILE (DataFile1, 7);
現在のデータベースにDataFile1という名前のデータファイルを縮小します。ターゲットサイズは7 MBです(このパラメータはオプションです)。
DBCC CLEANTABLE (AdventureWorks2012,'Production.Document', 0)
指定されたテーブルからスペースを再利用する
DBCC検証ステートメント
DBCCコマンドを使用すると、ユーザーはデータベースの状態を検証できます。
ALTER TABLE Table1 WITH NOCHECK ADD CONSTRAINT chkTab1 CHECK (Col1 > 100);
GO
DBCC CHECKCONSTRAINTS(Table1);
--OR
DBCC CHECKCONSTRAINTS ('Table1.chkTable1');
チェック制約はnocheckオプションで追加されるため、既存のデータではチェックされません。 DBCCは制約チェックをトリガします。
DBCCコマンドに続いて、データベース、テーブル、またはカタログの整合性をチェックします。
DBCC CHECKTABLE tablename1 | tableid
DBCC CHECKDB databasename1 | dbid
DBCC CHECKFILEGROUP filegroup_name | filegroup_id | 0
DBCC CHECKCATALOG databasename1 | database_id1 | 0
DBCC情報ステートメント
DBCCコマンドは、データベースオブジェクトに関する情報を表示できます。
DBCC PROCCACHE
プロシージャ・キャッシュに関する情報を表形式で表示します。
DBCC OUTPUTBUFFER ( session_id [ , request_id ])
指定されたsession_id(およびオプションのrequest_id)の現在の出力バッファを16進数およびASCII形式で返します。
DBCC INPUTBUFFER ( session_id [ , request_id ])
クライアントからMicrosoft SQL Serverのインスタンスに送信された最後のステートメントを表示します。
DBCC SHOW_STATISTICS ( table_or_indexed_view_name , column_statistic_or_index_name)
DBCCトレースコマンド
SQL Serverのトレースフラグは、SQL Serverの動作を変更したり、一部の機能をオン/オフしたりするために使用されます。 DBCCコマンドでトレースフラグを制御できます。
次の例では、トレースフラグ3205をグローバルに、3206を現在のセッションに切り替えます。
DBCC TRACEON (3205, -1);
DBCC TRACEON (3206);
次の例では、トレースフラグ3205をグローバルに、現在のセッションに対して3206をグローバルにオフにします。
DBCC TRACEON (3205, -1);
DBCC TRACEON (3206);
次の例は、トレースフラグ2528および3205のステータスを表示します。
DBCC TRACESTATUS (2528, 3205);
DBCCステートメント
DBCCステートメントは、SQL Serverのデータベースコンソールコマンドとして機能します。指定したDBCCコマンドの構文情報を取得するには、DBCC HELP(...)ステートメントを使用します。
次の例は、ヘルプが利用可能なすべてのDBCCステートメントを返します。
DBCC HELP ('?');
次の例は、DBCC CHECKDBステートメントのオプションを返します。
DBCC HELP ('CHECKDB');