使用 Profiler 調整 SQL Server Express?

使用 Profiler 調整 SQL Server Express?

我有一個 SQL Server 2005 資料庫...它的副本正在完整版本的 SQL Server 上運行。另一個副本在 Web 伺服器上的 SQL Server 2005 Express 中運作。

我使用了 SQL Profiler 並儲存了資料庫 SQL Express 副本上活動的調整追蹤日誌。

我想使用資料庫引擎優化顧問中保存的追蹤日誌...

如果我嘗試將 Advisor 連接到 Express 資料庫,我會被告知不支援 Express。

如果我嘗試將 Advisor 連線到 SQL Server 資料庫,則會得到空結果。

有什麼辦法可以做到這一點嗎?

答案1

您應該能夠使用從遠端生產伺服器 (Express) 收集的追蹤資料來調整本機開發伺服器上的相同資料庫。

但是您不能使用儲存在遠端伺服器中的追蹤表來執行此操作。根據使用資料庫引擎優化顧問的注意事項,“資料庫引擎調整顧問無法調整駐留在遠端伺服器上的追蹤表中的工作負載”

但我猜您正在使用追蹤文件,所以這不應該是問題。

如果您沒有收到任何建議,您應該先檢查前面提到的列表MSDN 頁面:

在以下情況下,資料庫引擎優化顧問可能不會提出建議:

正在調整的表格包含少於 10 個資料頁。

與目前的實體資料庫設計相比,建議的索引無法在查詢效能方面提供足夠的改進。

執行資料庫引擎最佳化顧問的使用者不是 db_owner 資料庫角色或 sysadmin 固定伺服器角色的成員。在執行資料庫引擎優化顧問的使用者的安全上下文中分析工作負載中的查詢。使用者必須是 db_owner 資料庫角色的成員。

答案2

我認為您需要將 Express 執行個體中的資料庫副本還原到完整執行個體。顧問查看架構以提出調整建議。

答案3

我認為您需要做的就是將資料庫追蹤到表,然後將調優顧問指向包含追蹤結果的表中的資料。這樣我認為您不需要移動任何資料庫。

答案4

我還發現我可以在 SQL Profiler 中編輯追蹤檔案並刪除指定登入或資料庫名稱的任何列。之後,調整顧問就開始工作了。

相關內容