首頁 >資料庫 >mysql教程 >如何復原和檢視 SQL Server Management Studio 查詢歷史記錄?

如何復原和檢視 SQL Server Management Studio 查詢歷史記錄?

Linda Hamilton
Linda Hamilton原創
2025-01-15 15:12:42967瀏覽

How Can I Recover and View My SQL Server Management Studio Query History?

存取 SQL Server Management Studio (SSMS) 查詢歷史記錄

與許多應用程式不同,SSMS 不維護持久的查詢歷史記錄日誌。 但是,如果 SQL Server 執行個體尚未重新啟動,您可以嘗試使用下列查詢從計劃快取中還原最近的查詢:

<code class="language-sql">SELECT t.[text]
FROM sys.dm_exec_cached_plans AS p
CROSS APPLY sys.dm_exec_sql_text(p.plan_handle) AS t
WHERE t.[text] LIKE N'%something unique about your query%';</code>

請記得將 '%something unique about your query%' 替換為您要尋找的查詢的獨特部分。

崩潰後復原:

如果 SSMS 崩潰,您可能會在此目錄中找到查詢歷史記錄的備份:

<code>C:\Users\<your_username>\Documents\SQL Server Management Studio\Backup Files\</code>

防止未來損失:

為了防止將來遺失查詢歷史記錄,請考慮以下選項:

  • SSMS 工具包:此外掛程式(注意:並非所有 SQL Server 版本免費)提供增強功能,包括查詢歷史管理。
  • 伺服器端跟踪:配置伺服器端跟踪,按您的登入名稱或主機名稱進行過濾,以捕獲查詢執行詳細資訊。

最佳化復原查詢:

為了更有效地檢索,特別是在繁忙的環境中,請考慮這個改進的查詢,它與 sys.dm_exec_query_stats 連接並按上次執行時間排序:

<code class="language-sql">
SELECT t.[text], s.last_execution_time
FROM sys.dm_exec_cached_plans AS p
INNER JOIN sys.dm_exec_query_stats AS s
   ON p.plan_handle = s.plan_handle
CROSS APPLY sys.dm_exec_sql_text(p.plan_handle) AS t
WHERE t.[text] LIKE N'%something unique about your query%'
ORDER BY s.last_execution_time DESC;
```  This will return results ordered from most recently executed to least recently executed.</code>

以上是如何復原和檢視 SQL Server Management Studio 查詢歷史記錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn