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

新手 SQL Server DBA 必知 15 項細節:記憶體、備份、安全、監控、習慣與工具鍵盤熱鍵

     編輯:關於SqlServer

針對初階 DBA,彙總 15 項生產環境實戰細節,涵蓋記憶體配置、自動成長策略、備份排程、安全強化、監控指標、操作習慣與 SSMS 熱鍵,助你避開常見坑點。

1. 自動成長設定:按固定 MB 成長,而非百分比

  • 資料檔 (MDF):**100-200 MB** 固定成長,避免頻繁小幅擴展產生碎片與 I/O 等待。
  • 記錄檔 (LDF):**固定 MB**(如 512MB/1GB),**禁用 10% 百分比成長**——100GB 記錄檔一次成長 10GB 會嚴重阻塞。
  • 初始大小依業務預估預留,減少成長次數。
    自動成長設定範例

2. 為 OS 預留記憶體:Max Server Memory 不要設 100%

  • 64GB RAM 例:設 Max Server Memory = 60GB,留 4GB 給 OS、備份、索引重建等非 Buffer Pool 作業。
  • 備份、大型查詢記憶體授與、CLR 皆從 **MemToLeave / OS 可用記憶體** 分配,若 SQL 佔滿實體記憶體會觸發記憶體壓力、計畫驅逐、甚至 OOM。

3. 善用 SQL Profiler / Extended Events

尋找慢查詢、死鎖、錯誤、參數嗅探問題的核心工具。新版本優先學習 **Extended Events**(輕量、內建、可視化)。

4. Windows 效能監視器 是效能基準

  • 啟動:perfmon.msc
  • 核心計數器(詳見第 41 篇):Buffer Cache Hit Ratio、Pages/sec、Available Bytes、% Disk Time、Avg Disk Queue Length、% Processor Time、Processor Queue Length。

5. 嚴格控管 xp_cmdshell:預設關閉,用畢即關

  • 開啟等同給予 sysadmin 作業系統級命令執行權,極高風險。
  • 若業務必須,建立 **Proxy 帳號** (##xp_cmdshell_proxy_account##) 限制權限,並稽核呼叫日誌。

6. 禁用 SSMS「記住密碼」

防止電腦遺失/他人存取時直接連入生產資料庫。

7. 跨伺服器 SSMS 連線:用畢即斷

避免在錯誤伺服器執行破壞性腳本(DROP、TRUNCATE、UPDATE 無 WHERE)。養成「開視窗→確認伺服器名稱→執行→立即關閉」習慣。

8. 資料/記錄檔放置:自訂路徑、分離 MDF/LDF、避免根目錄

  • 建立專用資料夾 D:\SQLData\, E:\SQLLog\。
  • 若有兩組獨立磁碟陣列(RAID 10 + RAID 0/1):**MDF 放 RAID 10(隨機讀寫)**、**LDF 放 RAID 0/1(循序寫入)**,最大化 I/O 效能。
  • 根目錄權限問題多,勿直接放置。

9. 備份排程:離峰、壓縮、日誌頻率對齊 RPO

  • 完整備份:業務最閒時段(如 02:00-04:00)。
  • 啟用壓縮(CPU 換 I/O/空間,通常划算)。
  • 記錄備份:視 RPO 定義(15 分鐘/1 小時),不可過疏(資料遺失風險)也不可過密(日誌檔碎片、I/O 爭用)。

10. 作業排程:避開整點備份高峰

日誌備份多為整點/半點,其他維護作業(索引重組、統計更新、DBCC)錯開 5-10 分鐘,減少資源爭用。

11. 作業監視器僅顯示最後一次執行狀態

歷史紀錄請查 msdb.dbo.sysjobhistory 或設定作業步驟輸出至檔案/資料表。

12. 查詢服務啟動時間

SELECT LOGIN_TIME FROM MASTER..SYSPROCESSES WHERE SPID = 1;

13. 禁止應用程式使用 sa 連線

  • 建立最小權限應用帳號(僅 EXECUTE 必要預存程序、SELECT/INSERT/UPDATE/DELETE 必要資料表)。
  • sa 密碼極度複雜、定期輪換、僅少數 DBA 知曉。

14. SSMS 常用熱鍵(效率倍增)

熱鍵功能
Ctrl+1sp_who (連線狀態)
Ctrl+2sp_lock (鎖狀態)
F5 / Alt+X執行查詢
Win+R → ssms快速啟動 SSMS
Alt+F1sp_help (物件屬性)
Alt+N新增查詢視窗
Ctrl+Shift+R重新整理 IntelliSense 快取 (消除紅線誤報)

15. IntelliSense 紅線誤報:Ctrl+Shift+R 重新整理

新增/修改物件後快取未更新,導致有效欄位顯示紅線「無效欄位名」,按 Ctrl+Shift+R 即時修正。

總結

DBA 核心價值在於**預防勝於治療**:正確配置、持續監控、嚴格權控、良好習慣、熟練工具。這 15 項細節是踏入生產環境的基礎護城河。

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