В системе SQL Server 2000 у меня есть файл templog.ldf, который, кажется, неограниченно растет! Но когда я проверяю, в tempdb никогда не бывает открытых транзакций (с использованием DBCC OPENTRAN), и я никогда не использую явные транзакции в tempdb.
Однако я использую временные таблицы в своих хранимых процедурах. И кто знает, что объекты доступа к данным ASP.NET могут делать за кулисами? База данных поддерживает веб-сайт ASP.NET.
Тем не менее, файл tempdb.mdf - файл данных tempdb - занимает вполне разумные 700 МБ. Файл templog.ldf может вырасти до 30 ГБ за день! Возможно, больше, если бы у меня не закончилось место на диске. Я не отбрасываю таблицы #tables в сохраненных процессах явно, но, опять же, файл mdf никогда не становится очень большим.
Почему журнал транзакций будет расти, если нет незавершенных транзакций? Освобождает ли журнал транзакций место? Также DUMP TRAN WITH NO_LOG не сжимает файл, как и событие CHECKPOINT через trunc. log on chkpt включен на tempdb. Остановка SQL Server очищает tempdb (и, возможно, DBCC SHRINKFILE, но я этого не сделал).
Спасибо за вашу помощь!