今天群里討論查詢是否產生日志,當然在用戶數據庫里面是不產生的,但是涉及到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/
新聞熱點
疑難解答