許多開發人員立志轉型 DBA,或初入行即以 DBA 為目標。究竟需掌握哪些知識與技能?筆者彙整實務工作與面試經驗,整理出 30 大核心題目,涵蓋 SQL Server DBA 大多數關鍵技術點,每大題下又包含多個細項,旨在為有志之士提供系統性檢視與備戰指南。
30 大核心題目綱要
- 資料類型與查詢差異:char/varchar/nvarchar 用途與空間;XML 節點查詢方法與效率;存儲過程 vs 直寫 T-SQL 差異。
- 系統資料庫:種類、職責、備份必要性與原因;master 損壞後的還原策略。
- TempDB 壓力分析:哪些操作使用 TempDB;異常暴增的可能原因與處置步驟。
- 索引體系深度:類型、原理、優缺點;為 SQL 建立適當索引的方法論;索引使用情況監控;維護與損壞修復;優化器忽略更好索引的原因。
- 檢視表索引:能否建立、優缺點、與資料表索引的差異。
- 作業與執行中語句監控:Job 資訊來源系統表;執行中語句擷取 DMV;特定 T-SQL 的 IO/Time 統計獲取。
- 海量資料跨伺服器遷移與清理:5,000 萬筆表中遷移 2,000 萬至另一伺服器並刪除源資料,方案設計與優劣權衡。
- 磁碟空間緊急應變:資料庫伺服器磁碟不足,最快恢復服務的處置流程。
- 暫存物件抉擇:臨時表、表變數、CTE 的差異、儲存位置、選型決策依據。
- 交易隔離與鎖機制:隔離等級與預設值;主要鎖類型;資料列版本控制實現原理。
- 死鎖與阻塞診斷:死鎖追蹤方法;阻塞追蹤與定位;問題語句處置流程;Profiler 追蹤事件選擇原則。
- 日誌體系管理:Windows/SQL Server 日誌種類與保留;產生新錯誤日誌條件;恢復模式差異;日誌暴增不可收縮的根因分析與分級處置。
- 分區表與分區檢視:概念、適用場景、收益。
- 資料比對與災難修復:同結構表差異比對;資料損壞修復;備份檔受損下的最大化還原;Identity 重置。
- 核心寫入機制與觸發器:Checkpoint vs Lazy Writer;DDL vs DML Trigger 用途與差異。
- 高可用技術選型:Mirroring vs Log Shipping 場景差異;Mirroring 與 Oracle Data Guard 對比。
- Mirroring 實戰:部署步驟、三種模式差異、同步/非同步原理與需求;部署後事務日誌處理策略。
- 複寫深度運維:配置與場景;模式類型;Push vs Pull;散發資料庫;錯誤定位與清理;同步鏈監控表。
- 複寫進階故障處理:發布端 Truncate 限制;Identity 列管理;缺失欄位/主鍵衝突/錯誤跳過/訂閱端表刪除/大批量異動處理;同步鏈嚴重延遲緊急恢復。
- Service Broker 應用:場景、建立物件、優缺點、跨伺服器訊息傳遞機制、除錯管道。
- 資料變更追蹤技術:CDC vs Change Tracking vs Trigger 優劣勢比較。
- SQL 調優方法論:判斷問題存在→定位根因→解決路徑的標準化流程。
- 資料庫故障排查 SOP:緊急問題處置分級響應流程。
- 備份策略規劃:大型資料庫/資料表備份方案,極小化 RPO 設計。
- 監控體系建設:關鍵指標 (SQL/OS)、效能基線建立、監控工具選型經驗。
- 遷移與測試環境快速構建:遷移步驟;10+ 實例測試環境快速重建 (源資料量小但實例多)。
- 容錯移轉叢集部署:建立步驟、最少 IP 需求、必要服務、共享磁碟與 RAID 規劃、磁碟分區;SQL Cluster vs MySQL Cluster vs Oracle RAC 差異。
- 溝通與推動重構:面對效能差、代碼複雜的存儲過程,如何說服不願改動的開發人員重構。
- 誤操作應變與職業反思:曾因誤操作導致故障的處置經驗;假設誤刪關鍵表的應急預案。
- 職業規劃與價值觀:目標成為何種 DBA、準備路徑、職業生涯規劃;入職後最渴望獲得什麼。
這 30 題不僅是面試題庫,更是 DBA 成長路線圖。建議逐項實作驗證,構建屬於自己的知識體系。