Sql-Server

有一個 92MB .mdf 和一個 58MB .ldf 好嗎?如何管理日誌以保持執行良好?

  • March 5, 2011

我有工作來修剪用於歷史記錄和日誌記錄的表以保持它們的修剪。我想確保我不會忽略日誌文件。

我可以或應該怎麼做才能檢查日誌文件?

我每晚執行的 SQL 腳本是:

declare @DBname varchar(500)
set @DBname = 'E:\Database\backup\PMIS_backup_' +
   convert(varchar(MAX), getdate(), 23 ) +'.bak'

BACKUP DATABASE [PMIS] TO DISK = @DBname
   WITH NOFORMAT, NOINIT, NAME = @DBname, SKIP, REWIND, NOUNLOAD, STATS = 10

數據庫處於簡單恢復模式。

如果數據庫處於簡單恢復模式,並且日誌文件沒有逐漸變大,那我就不用擔心了。如果有任何類型的維護計劃定期進行大量的重新索引,那麼它可能需要那麼大。

如果日誌文件確實變大了,您需要找出原因。您可以執行 DBCC SQLPERF(LOGSPACE) 來查看有多少日誌文件正在使用中 - 如果它一直很高,然後檢查 master.sys.databases 中的 log_reuse_wait_desc 列,看看它為什麼沒有像預期的那樣重用空間。如果使用率很低,那麼可能有一些一次性事務完成了大量工作並導致日誌文件增長。如果這是一個定期發生的事務,那麼反複收縮和增長日誌文件只會損害性能,因此請將其保留在任何能夠提供舒適工作空間的大小。另一方面,如果日誌文件的大小是數據文件的許多倍,那麼這可能是不必要的。

引用自:https://serverfault.com/questions/241800