2009-09-03 64 views
7

在SQL Server 2000系统上,我有一个templog.ldf文件,似乎无限制地增长!但是,当我检查时,tempdb中没有任何打开的事务(使用DBCC OPENTRAN),也不会在tempdb中使用显式事务。SQL Server Tempdb日志文件增长

但是,我在我的存储过程中使用临时表。谁知道ASP.NET数据访问对象可能在幕后做些什么?数据库支持ASP.NET网站。

无论如何,tempdb.mdf文件 - tempdb数据文件 - 是一个相当合理的700 MB。 templog.ldf文件可以在一天内增长到30 GB!可能更多,如果我没有用完磁盘空间。我没有明确地将#tables放入存储的特效库中,但是再次,mdf文件似乎永远不会变得非常大。

为什么在没有未完成的事务时事务日志会增长?事务日志是否回收空间?此外,DUMP TRAN WITH NO_LOG不会收缩文件,也不会通过trunc进行CHECKPOINT,事件。在tempdb上启用登录chkpt。停止SQL Server清除tempdb(并可能DBCC SHRINKFILE会,但我没有这样做)。

感谢您的帮助!

+0

你可以尝试在http://serverfault.com/上提问这个问题,我相信你会在那里得到更好的答案...... – 2009-09-10 20:19:57

回答