資料庫測試小幫手概觀
注意
此工具於 2024 年 12 月 15 日 淘汰。 我們已停止針對任何發生的問題支援此工具,而且不會發出任何錯誤修正或進一步更新。
資料庫測試助理 (DEA) 是 SQL Server 升級的實驗解決方案。 DEA 可協助您評估特定工作負載的目標 SQL Server 版本。 從舊版 SQL Server 升級至較新版本 SQL Server 的客戶可以使用此工具所提供的分析計量。
DEA 分析計量包括:
- 發生相容性錯誤的查詢。
- 性能下降的查詢和查詢計劃。
- 其他工作負載比較數據。
比較數據可能會導致更高的信賴度,並協助確保升級體驗成功。
取得 DEA
若要安裝 DEA,下載 最新版本的工具。 然後,執行 DatabaseExperimentationAssistant.exe 檔案。
比較工作負載的解決方案架構
下圖顯示工作負載比較的解決方案架構。 工作負載比較會在從 SQL Server 2008 升級至 SQL Server 2016 期間使用 DEA 和 Distributed Replay。
DEA 必要條件
以下是執行 DEA 的一些必要條件:
- 最低硬體需求:具有 3.5 GB RAM 的單一核心計算機。
- 理想的硬體需求:八核心 CPU(RAM 為 3.5 GB 或以上)。 具有八個以上核心的處理器不會改善 DEA 運行時間。
- 儲存 A、B 和報告分析資料庫需要額外的 33% 的效能追蹤容量。
設定 DEA
在必要環境架構中,建議您在與 Distributed Replay Controller 相同的電腦上安裝 DEA。 這種做法可避免跨電腦呼叫並簡化設定。
使用 DEA 進行工作負載比較的必要設定
DEA 會使用 Windows 驗證連線到資料庫伺服器。 請確定執行 DEA 的使用者可以使用 Windows 驗證連線到資料庫伺服器(來源、目標和分析)。
擷取設定需求
要擷取追蹤,使用者必須執行 DEA:
- 可以使用 Windows 驗證連線到源資料庫伺服器。
- 在源資料庫伺服器上具有系統管理員許可權。
此外,執行來源資料庫伺服器的服務帳戶需要對追蹤資料夾路徑進行寫入權限。
如需詳細資訊,請參閱 有關追蹤擷取的常見問題。
重播設定需求
若要重播追蹤,則需要執行 DEA 的使用者:
- 可以使用 Windows 驗證連線到目標資料庫伺服器。
- 在目標資料庫伺服器上具有系統管理員許可權。
此外,重新執行追蹤需要:
- 執行目標資料庫伺服器的服務帳戶具有追蹤資料夾路徑的寫入許可權。
- 執行 Distributed Replay 用戶端的服務帳戶可以使用 Windows 驗證連線到目標資料庫伺服器。
- 已針對 Distributed Replay 控制器上的連入要求開啟 TCP 連接埠。 DEA 會使用 COM 介面與 Distributed Replay 控制器通訊。
如需詳細資訊,請參閱 有關追蹤重新執行之常見問題。
分析組態需求
執行分析需要由執行 DEA 的使用者來進行:
- 可以使用 Windows 驗證連線到分析資料庫伺服器。
- 在源資料庫伺服器上具有系統管理員許可權。
設定遙測
DEA 具有啟用因特網的功能,可將遙測資訊傳送至Microsoft,以用於增強產品體驗。 收集的資訊也會儲存在您的電腦上以進行本機稽核,因此您隨時都能看到所收集的內容。 所有 DEA 記錄檔都會儲存在 \DEA 資料夾中 %temp%。
遙測數據可以在四種類型的事件上收集:
- TraceEvent:應用程式的使用事件(例如「已觸發停止擷取」)。
- 例外狀況:應用程式使用期間拋出的例外狀況。
- DiagnosticEvent:事件日誌,可在問題發生時協助診斷(未傳送至Microsoft)。
- FeedbackEvent:透過應用程式提交的使用者意見反應。
收集及傳送遙測數據是選擇性的。 若要指定要收集哪些事件,以及收集的事件是否傳送至Microsoft,請使用下列步驟:
- 移至安裝 DEA 的位置(例如 C:\Program Files (x86)\Microsoft Corporation\Database Experimentation Assistant)。
- 開啟並修改 .config 檔案 DEA.exe.config(適用於應用程式)和 DEACmd.exe.config(適用於 CLI),以適當地處理您的案例:
- 若要停止收集事件類型,請將 事件 的值(例如,TraceEvent)設定為 false。 若要再次開始收集事件,請將值設定為 true 。
- 若要停止儲存事件的本機複本,請將 traceLoggerEnabled 的值設定為 false。 若要重新開始儲存本機複本,請將值設定為 true 。
- 若要停止將事件傳送至Microsoft,請將appInsightsLoggerEnabled 的值設定為 false。 若要再次開始將事件傳送至Microsoft,請將值設定為 true 。
DEA 受 Microsoft 隱私聲明所控管。