Fanr

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

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

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

USE tempdb

DECLARE  @lsn nvarchar(100)
SELECT TOP 1 @lsn = [Current LSN]
FROM fn_dblog (NULL, NULL) ORDER BY [Current LSN] DESC;
select @lsn

SELECT * FROM AppServerProcesses.dbo.DB_PerformanceCounter ORDER BY addtime DESC


SELECT 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/

 

posted on 2014-04-03 12:26  Fanr_Zh  阅读(464)  评论(0编辑  收藏  举报