SQL Server 監控磁盤IO毛病,msdb.dbo.suspect_pages。本站提示廣大學習愛好者:(SQL Server 監控磁盤IO毛病,msdb.dbo.suspect_pages)文章只能為提供參考,不一定能成為您想要的結果。以下是SQL Server 監控磁盤IO毛病,msdb.dbo.suspect_pages正文
suspect_pages 表位於 msdb 數據庫中,是在 SQL Server 2005 中引入的。用於保護有關可疑頁的信息的 suspect_pages
數據庫治理員擔任治理表(重要經由過程刪除舊的行完成)。suspect_pages 表有年夜小限制,假如此表已滿,則不會記載新的毛病。若要避免此表填滿,數據庫治理員或體系治理員必需經由過程刪除行來手動消除此表中的舊條目。是以,我們建議您按期刪除或存檔 event_type 為已復原或已修復的行或具有舊 last_update 值的行。
若要監督對 suspect_pages 表履行的操作,可以使用 Database Suspect Data Page 事宜類。有時會因存在臨時性的毛病向 suspect_pages 表添加行。假如正在向該表添加許多行,則 I/O 子體系能夠出了成績。假如您留意到正向該表添加的行數忽然增長,我們建議您檢討一下 I/O 子體系是否是湧現了成績。
下表顯示了記載在 suspect_pages 表的 event_type 列中的毛病。
由操作體系 CRC 毛病形成的 823 毛病,或許校驗和毛病或頁扯破之外的 824 毛病(例如,頁 ID 毛病)
1
毛病的校驗和
2
殘破頁
3
已復原(頁在標志為毛病後已復原)
4
已修復(DBCC 修復了頁)
5
已由 DBCC 釋放
7
臨時性的毛病也會記載在 suspect_pages 表中。臨時性毛病的起源包括 I/O 毛病(例如電纜斷開銜接)或臨時未經由過程反復校驗和測試的頁。
數據庫引擎若何更新 suspect_pages 表
數據庫引擎對 suspect_pages 表履行以下操作:
假如表未滿,則每湧現一個 824 毛病,該表都邑更新以指明湧現了毛病,且毛病計數器也將響應遞增。
假如經由過程修復、復原或釋放操作修復後的頁仍有毛病,則其 number_of_errors 計數將會遞增,其 last_update 列也會更新
列出的頁經由過程復原或修復操作修復以後,該操作將更新 suspect_pages 行,以指導此頁已修復 (event_type = 5) 或已復原 (event_type = 4)。
假如運轉 DBCC 檢討,則該檢討會將一切未失足頁標志為已修復 (event_type = 5) 或已釋放 (event_type = 7)。
主動更新 suspect_pages 表
測驗考試讀取數據文件中的某一頁因為以下緣由之一掉敗後,數據庫鏡像同伴將更新 suspect_pages 表。
由操作體系 CRC 毛病招致的 823 毛病。
824 毛病(像頁扯破如許的邏輯破壞)。
以下操作將主動從 suspect_pages 表中刪除行。
ALTER DATABASE REMOVE FILE
DROP DATABASE
DBCC CHECKDB REPAIR_ALLOW_DATA_LOSS 更新 suspect_pages 表,以指導已釋放或已修復的各頁。
RESTORE 也可更新該列表。完全復原、文件復原或頁面復原將頁面項標志為已復原。