[20140403]查询是否产生日志

9/1/2015来源:SQL技巧人气:669

[20140403]查询是否产生日志

今天群里讨论查询是否产生日志,当然在用户数据库里面是不产生的,但是涉及到tempdb的查询呢?

小弟认为是在tempdb产生了日志:

USE tempdbDECLARE  @lsn nvarchar(100)SELECT TOP 1 @lsn = [Current LSN]FROM fn_dblog (NULL, NULL) ORDER BY [Current LSN] DESC;select @lsnSELECT * FROM AppServerPRocesses.dbo.DB_PerformanceCounter ORDER BY addtime DESCSELECT TOP 100 *FROM fn_dblog (NULL, NULL) WHERE [Current LSN] >= @lsn ORDER BY [Current LSN] DESC;GO

当然运行代码前,先测试一下是否有其他操作会影响tempdb日志

从上图可以看出 Transcation Name 为ExtenDeallocForSort,小弟认为是在tempdb上产生了日志了。

当然引用paul大师的文章佐证:http://www.sqlskills.com/blogs/paul/understanding-data-vs-log-usage-for-spills-in-tempdb/