ページの情報を確認するための DBCC コマンドとして、[DBCC PAGE] があります。
このコマンドですが、非公開 DBCC コマンドですのでヘルプを確認するためには以下のコマンドを実行します。
– ヘルプの確認 –
DBCC TRACEON(2588) |
?
– ヘルプの内容 –
dbcc PAGE ( {’dbname’ | dbid}, filenum, pagenum [, printopt={0|1|2|3} ]) |
?
プリントオプションの設定は以下のなります。
- 0 : ページヘッダのみ表示
- 1 : ページヘッダ + データ部を表示
- 2 : ページヘッダ + データ部を 16 進数のダンプで表示
- 3 : 各行を個別に出力
DBCC PAGE でページ情報を出力するためには、トレースフラグ 3604 を有効にする必要があります。
試しに DCM のページ情報を出力してみたいと思います。
– ページ情報の取得 –
DBCC TRACEON(3604) |
?
– 実行結果 –
PAGE: (1:6) BUFFER: BUF @0x00000000AAFD2A00 bpage = 0x00000000AA4A8000?????????? bhash = 0x0000000000000000?????????? bpageno = (1:6) PAGE HEADER: Page @0x00000000AA4A8000 m_pageId = (1:6)???????????????????? m_headerVersion = 1????????????????? m_type = 16 Allocation Status GAM (1:2) = ALLOCATED??????????????? SGAM (1:3) = NOT ALLOCATED?????????? PFS (1:1) = 0x44 ALLOCATED 100_PCT_FULL DATA: Slot 0, Offset 0x60, Length 94, DumpStyle BYTE Record Type = PRIMARY_RECORD???????? Record Attributes =????????????????? Record Size = 94 Memory Dump @0x000000000B2EA060 0000000000000000:?? 00005e00 00000000 00000000 00000000 †..^…………. Slot 1, Offset 0xbe, Length 7992, DumpStyle BYTE Record Type = PRIMARY_RECORD???????? Record Attributes =????????????????? Record Size = 7992 Memory Dump @0x000000000B2EA0BE 0000000000000000:?? 0000381f ffffffff ffffffff ffffffff †..8…………. |
?
[m_type = 16] となっていますので、このページは DCM です。
通常運用でページ情報を確認することはないと思いますが、差分バックアップや一括ログ操作の動作を確認するときには、
ページ情報を確認すると理解しやすくなります。
バックアップに関してはどこかのタイミングで投稿したいと思っていますので、その際に DCM / BCM についても
記載していきたいと思っています。