首页 >数据库 >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