我有一個SQL Server 2008 Express數據庫是7.8 GB的大小SQL Server數據庫大小縮減查詢
數據文件1.2 GB
日誌文件6.6 GB
恢復模式=全
自動收縮=假
在Live數據庫上,減少此數據庫大小的最佳方法是什麼?
我有一個SQL Server 2008 Express數據庫是7.8 GB的大小SQL Server數據庫大小縮減查詢
數據文件1.2 GB
日誌文件6.6 GB
恢復模式=全
自動收縮=假
在Live數據庫上,減少此數據庫大小的最佳方法是什麼?
在您可以收縮以完整恢復模式運行的數據庫之前,您必須備份事務日誌。因此,該過程是運行事務日誌備份,然後收縮日誌文件。
如果您從未執行過事務日誌備份,那麼您將繼續遭受失控日誌文件的影響,並且縮小它只會是一個創可貼解決方案。
希望這些信息對您有所幫助。
閱讀[恢復模型概述](http://msdn.microsoft.com/en-us/library/ms189275.aspx),這應該有助於您理解數據庫爲何如此龐大。除非您的磁盤空間不足,否則我會適當地處理日誌(定期tlog備份或更改恢復模式),但不要縮小它,除非它符合某些[標準](http://www.sqlskills.com/blogs/paul /post/Why-you-should-not-shrink-your-data-files.aspx) – billinkc
在Live數據庫上,我可以將恢復模式從FULL更改爲Simple。我可以設置每天備份數據庫的備份作業嗎?從FULL切換到Simple時,日誌文件會發生什麼變化? – Refti
是的,你可以。語法是'ALTER DATABASE [MY_DATABASE] SET RECOVERY SIMPLE WITH NO_WAIT',您可以使用Windows任務計劃程序在任何時間表上創建完整備份,這對您的應用程序有意義。數據庫備份代碼'BACKUP DATABASE [MY_DATABASE] TO DISK = N'C:\ mydatabase.bak'WITH NOFORMAT,NOINIT,NAME = N'My Database backup',SKIP,NOREWIND,NOUNLOAD,STATS = 10' **但是,不要在生產中不要嘗試這些,** _yet_。備份是好的,它不會傷害你。在更改任何與生產有關的內容之前,先在開發/測試環境中嘗試它們並評估結果。 – billinkc