「Microsoft SQL Server」が稼働するデータベースシステムを運用する管理者に向け、「動的管理ビュー」の活用を軸にしたトラブル対策のためのノウハウを紹介していきます。今回は、ミラーリング環境におけるページの自動修復情報の出力について解説します。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
本連載では、「Microsoft SQL Server(以下、SQL Server)」で使用可能な動的管理ビューについて、動作概要や出力内容などを紹介していきます。今回は「sys.dm_db_mirroring_auto_page_repair」の、ミラーリングで試行したページの自動修復情報の出力について解説します。対応バージョンは、SQL Server 2008以降です。
以前に紹介した「sys.dm_hadr_auto_page_repair」は、可用性グループが構築されている環境でのページの自動修復情報が出力されましたが、「sys.dm_db_mirroring_auto_page_repair」は、ミラーリング環境でのページの自動修復情報が出力されます。
列名 | データ型 | 説明 |
---|---|---|
database_id | int | この行に対応するデータベースのID |
file_id | int | ページが存在するファイルのID |
page_id | bigint | ファイル内のページのID |
error_type | int | エラーの種類。次のいずれかになる -1 = 全てのハードウェア823エラー 1 = 不適切なチェックサムまたは破損ページ以外の824エラー 2 = 不適切なチェックサム 3 = 破損ページ |
page_status | int | ページ修復の試行ステータス。次のいずれかになる 2 = パートナーからの要求を待機中 3 = 要求はパートナーに送信済み 4 = ページの自動修復を待機中(応答はパートナーから受信済み) 5 = ページの自動修復に成功し、ページは使用可能 6 = 修復不可能 |
modification_time | datetime | ページステータスが最後に変更された日時 |
ミラーリングが構築された環境で、「エラー824」のページ破損が検出されました(図1)。
ページ破損が検出されるとミラーから正常なページを自動でコピーして修復するため、再度同じクエリを実行すると正常に出力結果が表示されます(図2)。
動的管理ビューの「sys.dm_db_mirroing_auto_page_repair」を確認すると、先ほどエラーとなっていたデータベースID「5」、ファイルID「1」、ページID「264」の破損が不適切なチェックサムとして検出されており、ページの自動修復に成功し、ページが使用可能になっている状況が確認できます(図3)。破損したページの内容は、後日紹介する「sys.dm_db_page_info」で確認できます。
※本Tipsは、「Windows Server 2019」上に「SQL Server 2019 CTP2」をインストールした環境を想定して解説しています。
日本ユニシス株式会社所属。Microsoft MVP for Data Platform(2017〜)。入社以来 SQL Serverの評価/設計/構築/教育などに携わりながらも、主にサポート業務に従事。SQL Serverのトラブル対応で社長賞の表彰を受けた経験も持つ。休日は学生時代の仲間と市民駅伝に参加し、銭湯で汗を流してから飲み会へと流れる。
日本ユニシス株式会社所属。入社以来SQL Server一筋で評価/設計/構築/教育などに携わりながらも、主にサポート業務に従事。社内のプログラミングコンテストで4回の優勝経験も持つ。趣味は輪行で週末は自転車を持っての旅行。目標は色々な日本百選を制覇すること。
Copyright © ITmedia, Inc. All Rights Reserved.