SQL Server監控清單

2021-06-17 00:39:48 字數 1616 閱讀 4824

一. 伺服器

1. 狀態監控

(1) 伺服器是否可訪問?

(2) 相應的資料庫服務是否啟用?

(3) 作業系統事件日誌中的錯誤或告警

(4) 磁碟可用空間

伺服器狀態監控,不管使用第三方工具,還是使用自定義指令碼,都建議部署在專門的一台/多台監控機上,因為如果伺服器down了或者故障了,任何本機的程式/指令碼可能就無法執行了,從而也失去了監控的意義。

甚至有人想過在本機的sql server裡寫sql語句來監視伺服器狀態,儘管可以實現,但是有點自相矛盾。也許,又會有這麼乙個思路,伺服器正常時,sql server就發出郵件通知,如果沒有收到郵件就說明伺服器不正常了,可如果有很多伺服器時,怎麼知道誰沒發郵件呢?

2. 效能監控

(1) io壓力

(2) 記憶體使用

(3) cpu使用

(4) 網路頻寬占用

這1,2,3,4是按照容易出現瓶頸的順序排列的,由於磁碟的讀寫速度限制,通常io是最容易出現瓶頸的地方,我們所做的很多優化,也都是針對io的,比如:索引優化,讀寫分離等等。

從dba的角度來說,伺服器的某些效能監控,如果可以的話,從資料庫層來做倒也無妨。

二. 資料庫

1. 狀態監控

(1) 資料庫可否開啟 (資料庫狀態)

(2) 資料庫備份有沒有成功

(3) sql server/sql server agent錯誤日誌中的錯誤或告警

(4) sql agent 作業執行狀態

(5) 資料庫一致性檢查的結果 (dbcc checkdb)

(6) 資料庫還原測試的結果

以下幾條狀態監控,通常需要和系統平均值/基線值比較才有意義,否則沒有告警的標準。

(7) 連線數、請求數、事務數

(8) 資料庫/檔案使用、大小、可用空間

(9) 表使用、行數、占用空間

2. 效能監控

(1) 有沒有長時間執行的查詢 (一般指沒有被任何請求阻塞,效率很差的查詢)

(2) 有沒有被阻塞的查詢 (可能單獨執行很快,但和別的請求一起,由於有鎖等待,耗時很長)

(3) 有沒有死鎖 (開發人員/使用者口中說的」死鎖」 通常是阻塞/等待,資料庫死鎖通常很少讓使用者感覺到等待,一般是請求被中斷,因為被kill掉了)

(4) 有沒有等待 (一般指各種資源的等待,等待和阻塞的交集就是鎖等待)

(5) 有沒有缺失的/未被使用的/效率不高的索引,以及索引碎片

(6) 有沒有過期的統計資訊

(7) 有沒有資料庫檔案的爭用 (比如:日誌檔案,tempdb爭用)

(8) 有沒有消耗cpu較大、io讀寫較多的查詢 (通常io消耗大的,也就是記憶體消耗大的查詢)

三. 其他

(1). 如果有部署高可用的策略,會有映象、複製、日誌傳送、集群狀態的監控;

(2). 某些業務資料有嚴格的一致性要求,業務資料的校驗,最好也做在監控的告警裡面;

(3). 對於資料庫/例項的選項、引數設定,登入、使用者、鏈結伺服器等物件的可用性,通常在每年/每季度的health check裡檢查過就可以了,如果不放心,當然也可以放到監控的告警中來。

0 SQL Server監控清單

一.伺服器 1.狀態監控 1 伺服器是否可訪問?2 相應的資料庫服務是否啟用?3 作業系統事件日誌中的錯誤或告警 4 磁碟可用空間 伺服器狀態監控,不管使用第三方工具,還是使用自定義指令碼,都建議部署在專門的一台 多台監控機上,因為如果伺服器down了或者故障了,任何本機的程式 指令碼可能就無法執行...

0 SQL Server監控清單

資料庫伺服器的監控可大致分為兩類 1 狀態監控 資料庫伺服器有沒有在健康地執行?2 效能監控 健康執行的同時,有沒有效能問題?可不可以更快些?一.伺服器 1.狀態監控 1 伺服器是否可訪問?2 資料庫服務是否啟用?3 作業系統事件日誌中的錯誤或告警 4 磁碟可用空間 2.效能監控 1 io壓力 2 ...

免費的SQL Server監控工具

sql 資料庫監控 研發實踐 檢測和監控網路上的sql伺服器。spiceworks公司的免費的sql server監控工具來檢視定製的部件和訪問伺服器的健康細節。spiceworks還在自動檢索網路上的sql資料庫 sql server 2005及更高版本 的資訊。衛生檢查,每分鐘執行一次,以確保資...