在 SQL Server 2008 中,数据库恢复模型配置为full
,是诸如
从表名中选择 col1,col2,col3
记录到事务日志文件中。
换句话说,我可以使用事务日志备份确定特定一天在数据库上运行了哪些查询吗?
不会。事务日志根本不记录查询。它只是记录前滚或回滚事务所需的信息(以及SELECT
查询根本不会生成任何记录的活动)
你可以试试
select top 100 *
from sys.fn_dblog(default,default)
看看记录的东西。
如果您需要此类信息,您需要设置跟踪/扩展事件会话/审核会议 https://msdn.microsoft.com/en-us/cc280386.aspxn 记录下来。在大多数环境中,这可能是非常重的。
您可以使用以下内容来大致了解正在运行的即席查询。
SELECT text
from sys.dm_exec_cached_plans
cross apply sys.dm_exec_sql_text(plan_handle)
where objtype='Adhoc'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)