SQL Server 內部部署和混合式案例的疑難解答和診斷工具

適用於:SQL Server

總結

Microsoft SQL Server 混合式的產品支援會使用疑難解答工具來協助客戶收集記錄並縮小技術問題的範圍。 這些工具可供公開使用。 本文摘要說明 SQL Server 產品支援工程師所使用的診斷工具。 本文詳細說明各種疑難解答案例,並顯示對應的記錄收集與記錄分析工具。

SQL Server 的診斷工具

情境 要收集的基本記錄 收集記錄的工具 用來分析記錄的工具
可用性群組 - 叢集記錄
- 事件記錄檔
- 系統監視器(效能監視器記錄)
- SQL Server 錯誤記錄檔
- SQLDIAG XEL 檔案
- AlwaysOn 健康情況會話 XEL 檔案
- 系統健康狀況會話 XEL 檔案
- AG 資料移動的擴展事件
- AG 的 DMV 和目錄檢視快照集
Windows:
- 優先:SQL LogScout
使用 情境 "AlwaysOn"。

- 替代方案: TSSv2
使用場景「SQL Base」。

- 替代方案: PSSDIAG
使用自訂診斷「AlwaysOn 基本資訊」。

Linux:
- SQL LogScout Linux
請使用「scenario_static.scn」。
- 優先: AGDiag
要使用的案例:分析故障轉移和失敗。

- 替代方案: SQL Nexus
要使用的案例:效能、延遲、健康情況和最佳做法。
效能變慢
- 擴展事件(XEvent)追蹤會捕捉批次層級的啟動/完成事件、錯誤和警告、日誌擴展/縮減、鎖定升級和逾時、死鎖、登入/登出
- 主動執行 SQL 追蹤和 Xevents 的清單
- 追蹤等候/封鎖和高CPU查詢的SQL DMV 快照集
- 查詢數據存儲資訊(如果它是啟用狀態)
- tempdb SQL DMV/系統檢視中的爭用資訊
- 連結的伺服器元資料 (SQL DMV/系統檢視)
- Service Broker 組態資訊 (SQL DMV/系統檢視)
Windows:
- 優先:SQL LogScout
使用情境 “GeneralPerf”、“DetailedPerf” 或 “LightPerf”。


- 替代方案: PSSDIAG
使用「一般效能」、「詳細效能」或「輕效能」案例。

Linux:
- SQL LogScout Linux
請使用「scenario_sql_perf_general.scn」、「scenario_sql_perf_detailed.scn」或「scenario_sql_perf_lite.scn」。
- 優先: SQL Nexus
要使用的案例:效能分析、最佳做法建議、瓶頸分析、封鎖和熱門查詢。

- 替代方案: RML 公用事業
要使用的案例:查詢分析,以瞭解最耗用資源的查詢。
連線 - BID 追蹤/驅動程式追蹤
- 網路追蹤
- 驗證追蹤
- SQL Server 錯誤記錄檔
- Windows 事件記錄檔
NETSTAT 和 TASKLIST 的快照集
Windows:
- 優先: SQL Trace
在 INI 檔案中設定集合設定。

- 替代方案:SQL LogScout
使用 情境 「NetworkTrace」。

- 替代方案: SSPICLIENT
當遇到 SSPI 或 Kerberos 錯誤時,請使用此工具來記錄詳細追蹤以供分析。

Linux:
- SQL LogScout Linux
請使用「scenario_static.scn」。
- logger.ini (新增 [Logger:security.kerberos] 與 [Logger:security.ldap] 分段)。
- tcpdump (Linux 網路封包擷取)。
- 偏好: SQL Network Analyzer 使用者介面
SQL 網路分析器
使用情境:讀取網路封包擷取檔案,並產生報告以突顯潛在的重點區域。

- 替代方案: SQLCHECK
報告任何可能影響連線的設定。

- 替代方案: SQLBENCH
顯示比較分析的時間。

- 替代方案: DBTEST
記錄連接所需的時間,以及執行命令所需的時間。
複製 - SQL Server 錯誤記錄檔
- 複寫、CDC、CT 診斷資訊(SQL DMV/系統檢視)
Windows:
- 優先:SQL LogScout
使用數據收集 情境
「複寫」。


- 替代方案: PSSDIAG
使用自訂診斷工具來進行「複寫」。

Linux:
- SQL LogScout Linux
請使用「scenario_static.scn」。
- 優先: SQL Nexus
要使用的案例:復寫報告、效能分析、最佳做法建議、瓶頸分析、封鎖和頂級查詢。
安裝/設定 - 設定包含所有安裝日誌的 Bootstrap 資料夾 - 優先:SQL LogScout
使用數據收集 情境「設定」。
備份/還原 - 備份/還原進度 Xevent (backup_restore_progress_trace)
- 備份還原進度的追蹤標誌
- SQL VSS 寫入器記錄檔 (在 SQL Server 2019 和更新版本上)
- 針對 VSS 備份相關場景的 VSS Admin(OS)日誌
- 效能監視器
Windows:
- 優先:SQL LogScout
使用數據收集 情境 "BackupRestore"。

Linux:
- SQL LogScout Linux
請使用「scenario_static.scn」。
記憶體使用量 - 記憶體管理者 DMV 或 DBCC MEMORYSTATUS
- 效能監視器
Windows:
- 優先:SQL LogScout
使用數據收集 案例 「記憶體」。

Linux:
- SQL LogScout Linux
請使用「scenario_sql_perf_general.scn」。
- 優先: SQL Nexus
適用情境:匯入記憶體輸出並在 Memory Brokers 上檢視。
記憶體傾印 - 針對特定故障排除情境擷取的手動記憶體傾印
- 針對例外狀況案例自動產生記憶體轉儲
Windows:
- 優先:SQL LogScout
使用數據收集 情境 「DumpMemory」。

- 替代方案: SQLDumper

- 替代方案: TSS V2
使用案例 「SQL Base」 來收集現有的記憶體轉儲。

Linux:
- SQL LogScout Linux
請使用「scenario_static.scn」。
- 優先:WinDbg(Windows除錯工具)
使用情境:載入與分析 記憶體轉儲。

- 替代方案: SQL CallStack 解析器
資料庫損毀 - DBCC 檢查資料庫
SQL I/O 模式壓力模擬 Windows:
- SQLIOSim

Linux:
- SQLIOSim for Linux