![](/img/trans.png)
[英]What is the reason that the LOG file size of the SQL Server database does not decrease?
[英]How to decrease size of SQL Server 2014 database
我有一個大約的SQL Server 2014數據庫轉儲。 60GB大。 對於原始數據庫,在SQL Server Management Studio中顯示,“ ROWS數據”的初始大小約為99000MB,而“ LOG”的初始大小約為25600MB。
現在數據庫中有一個大約10GB的視圖表,我可以對其進行沖洗/清潔。
刪除這些表中的數據后,減小數據庫物理大小的最佳方法是什么? 我發現很多帖子都是關於SHRINKDATABASE的,但是由於碎片和性能不好,一些文章不推薦它。
提前致謝。
這是我用來減少已用空間並釋放數據庫空間和實際驅動器空間的代碼。 希望這可以幫助。
USE YourDataBase;
GO
-- Truncate the log by changing the database recovery model to SIMPLE.
ALTER DATABASE YourDataBase
SET RECOVERY SIMPLE;
GO
-- Shrink the truncated log file to 1 MB.
DBCC SHRINKFILE (YourDataBase_log, 1);
GO
-- Reset the database recovery model.
ALTER DATABASE YourDataBase
SET RECOVERY FULL;
GO
我建議您不要使用DBCC SHRINKDATABASE,而應該使用DBCC SHRINKFILE ,顯然您的表應該存儲在不同的FILEGROUP上。 然后,您可以減小數據庫的物理大小,從而優化碎片。
希望這可以幫助
您需要使用下面的查詢來縮小DataBase
。
ALTER DATABASE [DBNAME] SET RECOVERY SIMPLE WITH NO_WAIT
DBCC SHRINKFILE(PTechJew_LOG, 1)
ALTER DATABASE [DBNAME] SET RECOVERY FULL WITH NO_WAIT
運行此查詢后,檢查您的日志文件。 它的工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.