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

SQL Server 資料庫效能監控清單:資料庫層級設定最佳實踐

     編輯:關於SqlServer

監控策略:每一個資料庫都要檢查

將下表複製一份對每個使用者資料庫執行檢查,記錄預設值與目前值的差異。

資料庫選項 (Database Options) - 影響效能的 6 項核心設定

選項預設建議影響說明
Auto_CloseOFFOFF桌面版設計。開啟會導致頻繁開關資料庫,嚴重拖慢連線效能。生產環境必須關閉。
Auto_Create_StatisticsONON查詢優化器自動建立單欄統計資訊,大幅提升計畫品質。首次建立微小延遲可接受。
Auto_Update_StatisticsONON (多數)統計過期自動更新。極高負載時可能在尖峰期觸發,可改為離峰手動 UPDATE STATISTICS,但關閉風險較大。
Auto_ShrinkOFFOFF每 30 分鐘檢查收縮,佔用資源且易造成碎片。改用維護計畫排程 DBCC SHRINKDATABASE/FILE。
Read_OnlyOFF視需求唯讀資料庫 (報表/歸檔) 開啟可移除鎖開銷,提升查詢效能。需寫入時暫時關閉。
Torn_Page_DetectionSQL 2000: ON
SQL 7.0: OFF
權衡偵測 8KB 頁寫入過程斷電導致的殘頁。開啟有微小效能成本;極高效能要求可關閉,但需 UPS/RAID 保護。

資料庫組態設定 (Database Configuration Settings)

設定預設/說明建議
Compatibility LevelSQL 2000: 80
SQL 7.0: 70
**使用原生版本等級** (80/90/100/110...)。相容模式會停用新優化器功能,損失效能。
Auto Grow (資料/記錄檔)依百分比 10%
  • 小/中型庫:改為 **固定 MB 增長** (如 100-500MB),減少頻繁增長帶來的 I/O 尖峰。
  • 大型庫 (10GB+):百分比增長會產生巨大單次增長 (1GB+),改固定量更可控。
  • 預先手動擴展至預估容量 (80% 磁碟) 為最佳。
記錄檔自動增長10%同上,且**避免產生過多 VLF (Virtual Log Files)**。VLF 過多會拖慢啟動/還原/備份。建議預先分配、固定增長。

檢查步驟 (SSMS / T-SQL)

  1. SSMS:右鍵資料庫 → 屬性 → 「選項」頁籤檢視選項、「檔案」頁籤檢視自動增長。
  2. T-SQL 批次檢查:
    SELECT name, is_auto_close_on, is_auto_create_stats_on, is_auto_update_stats_on, is_auto_shrink_on, is_read_only, compatibility_level FROM sys.databases;
    SELECT name, growth, is_percent_growth FROM sys.master_files WHERE type_desc = 'ROWS' OR type_desc = 'LOG';

維護計畫建議排程

  • 每日:UPDATE STATISTICS (高頻表)、日誌備份 (完整模式)。
  • 每週:索引重組/重建 (sys.dm_db_index_physical_stats 導向)、DBCC CHECKDB。
  • 每月:檔案增長趨勢分析、容量規劃。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved