Sql-Server

沒有任何插入/更新的收縮數據庫

  • December 19, 2020

我們有一個歸檔過程,其中我們備份目前數據庫並將其還原為 xxx 歸檔數據庫。現在這個數據庫包含以前的數據並且不會有任何插入/更新/刪除。

由於該數據庫僅用於報告,我們正在考慮縮小數據庫。但是,這會增加索引碎片。我們正在考慮以下步驟:

  1. 通過重新組織收縮數據庫
  2. 重新組織索引

這會影響數據庫性能嗎?我們可以考慮哪些其他選項來恢復空間?

更新:在此過程中,我們將恢復模式更改為簡單,備份數據庫以使數據庫脫離 Pseudo-Simple 狀態,然後計劃收縮數據庫。

由於該數據庫僅用於報告,我們正在考慮縮小數據庫。

一次明智的收縮是可以的。磁碟空間便宜!

Increases the index fragmentation是進行收縮操作的副作用DBCC SHRINKFILE建議在維護視窗期間或活動最少時縮小使用量。使用腳本分塊收縮數據庫。

我們可以考慮哪些其他選項來恢復空間?

另一種選擇是編寫數據庫腳本,然後 bcp out 和 bcp in data

如果您採用備份/恢復路線,請確保啟用備份壓縮(源伺服器)和即時文件初始化(源和目標伺服器)。這將有助於縮短恢復時間。

在此過程中,我們將恢復模式更改為簡單,備份數據庫以使數據庫脫離 Pseudo-Simple 狀態,然後計劃收縮數據庫。

我不確定這與縮小數據庫有什麼關係。進行收縮和重組後,您可以進行備份。

既然您只打算使用數據庫進行報告,為什麼不將數據庫保持在只讀模式呢?

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