Sql-Server

如何減少 SQL Server 中的數據庫大小?

  • January 16, 2022

我有一個場景,有一個備份數據庫,我們通常在執行任何更新/刪除之前儲存生產數據庫中的表備份,以便如果出現任何問題,我們可以從備份數據庫中創建的表中恢復數據。但是,備份數據庫的大小正在迅速增加,我需要一種方法來減小它的大小。我嘗試刪除舊表並縮小 BackUP DB,但縮小需要太多時間。

請建議。

謝謝!

您是否研究過表/索引壓縮以查看您的表是否可以在BackUp數據庫中更好地壓縮?

您可以使用系統儲存過程sp_estimate_data_compression_savings粗略計算通過壓縮表/索引可以節省多少空間。

此外,如果您不需要在BackUp數據庫中保存較舊的數據,則應盡可能將其刪除(也許在您完成對主表的數據更改並驗證是否正常之後?)。通過這樣做,您將釋放可在BackUp數據庫中重複使用的空間,以主動防止其增長。

這是一次性事件還是會再次發生?即,這個“副本”數據庫是否會隨著時間的推移用於儲存舊的數據副本?如果是這樣,那麼當您最終在第二天或一周內再次需要此儲存空間時,為什麼還要付出高昂的代價來回收儲存空間?原因與我們通常不收縮數據或日誌文件的原因相同。

是的,您當然可以使用壓縮選項,因此此副本不需要太多空間。它們已經被建議(可能帶有存檔壓縮和數據壓縮的聚集列儲存索引)。評估這些選項,然後就可以滿足您的副本數據庫的磁碟要求。:-)

引用自:https://dba.stackexchange.com/questions/306118