如何釋放事務日誌空間在SQL Server 2005:SQL Server事務日誌已滿
我有事務日誌的大小= 70 GB,並有四種事務日誌在不同的驅動器1,2,3,4。 通過DBCC SQLPERF(LOGSPACE)我發現事務日誌是Full(使用100%),我想釋放事務日誌中的空間,並且我不想T日誌備份。我沒有空間備份事務日誌。我的數據庫處於複製狀態。
- 我怎樣才能騰出事務日誌或
- 而不是3事務日誌文件,我只能有一個日誌文件或
- 如果收縮方法做什麼用的複製呢?
如何釋放事務日誌空間在SQL Server 2005:SQL Server事務日誌已滿
我有事務日誌的大小= 70 GB,並有四種事務日誌在不同的驅動器1,2,3,4。 通過DBCC SQLPERF(LOGSPACE)我發現事務日誌是Full(使用100%),我想釋放事務日誌中的空間,並且我不想T日誌備份。我沒有空間備份事務日誌。我的數據庫處於複製狀態。
查閱以下Microsoft的文章。
http://msdn.microsoft.com/en-us/library/ms175495.aspx
,我想騰出 事務日誌的空間,我不想T-數 備份
MS不支持此。
事務日誌備份是需要的。得到一個驅動器,做到這一點。
如果你不這樣做,你不能釋放日誌。
不釋放日誌不能縮小文件。 Ergo,無論您是否需要,您都需要進行備份。
如果您不關心事務日誌,那麼應該在簡單恢復模式下創建數據庫以開始使用。
會縮小文件個別完成你想要的?
DBCC SHRINKFILE (N'LogFile', 1)
執行語句的順序如下:
BACKUP LOG <db_name> WITH TRUNCATE_ONLY
--or save to log to other drives on disk if required
GO
CHECKPOINT
GO
--replace 2 with your actual log file number.
DBCC SHRINKFILE (2, 100)
如果日誌不收縮,然後檢查日誌文件增長的原因。關於這方面更多的信息可以在這裏找到:
http://sqlreality.com/blog/ms-sql-server-2008/troubleshooting-the-full-transaction-log-problem/
已經是有關複製數據庫here恢復模式開關討論。你可以閱讀一些documentation as well on MSDN。
如果你不想讓T-日誌備份,因爲空間的限制,你可以把複製的數據庫中的簡單恢復模式,並嘗試:
執行檢查點。處於SIMPLE恢復模式的數據庫將清除每個檢查點上的LOG。
DBCC SHRINKFILE (N'LogFileName', 1) -- shrink the log file to 1 MB
之後,將其更改爲完整。 爲了刪除一些數據庫的日誌文件,首先必須清空那些用於刪除的日誌文件,然後刪除它們。詳情here。
屬於服務器故障 – 2010-11-09 10:52:24