SQL Server 手動釋放空間

SQL Server 在將資料刪除後,會將資料頁標記為「可重用」,供後續要新增資料時使用,但不會實際釋放空間。所以刪掉大量資料之後發現可用磁碟空間沒有增加是正常的。

要馬上釋放硬碟空間就需要執行以下指令:

縮減 MyDb 資料庫:
    
DBCC SHRINKDATABASE (MyDb);
    

縮減 MyDb 資料庫,將未使用的空間保留 10% 不釋放:
    
DBCC SHRINKDATABASE (MyDb, 10);
    


註: 需要使用具有系統管理員角色或是有 db_owner 才可以執行,釋放可能需要一段時間,並且在備份的過程中沒有辦法釋放空間,釋放空間時也沒有辦法執行備份。釋放完空間後建議重建索引。

參考資料:
Microsoft.Learn - Shrink a database

留言

張貼留言

如果有任何問題、建議、想說的話或文章題目推薦,都歡迎留言或來信: a@ruyut.com