首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 監控記錄檔大小並自動郵件通報

     編輯:關於SqlServer

監控邏輯

建立預存程序 db_sendmail_mssqllogsize,掃描所有連結伺服器上使用者資料庫的記錄檔大小,若超過 10 GB(10240 MB)則產生 HTML 報表並發送郵件。

核心步驟

  1. 從 DB_ALLHostInfo 取得啟用的連結伺服器清單。
  2. 迴圈執行 OPENQUERY 查詢各伺服器 master.sys.master_files,篩選 type_desc = 'LOG' 且非系統資料庫、非唯讀資料庫。
  3. 將結果寫入集中表 db_alldb_logsize。
  4. 以 XML PATH 組裝 HTML 表格,僅包含超標記錄。
  5. 呼叫 msdb.dbo.sp_send_dbmail 發送 HTML 郵件。

郵件範例

搭配報表服務

將收集資料建立簡單報表,提供歷史趨勢分析:

執行方式

EXEC db_sendmail_mssqllogsize

可排入 SQL Agent 定期執行,實現自動化監控。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved