2012-06-02 91 views
0

從SQL Server數據庫表中刪除大量數據後,數據庫大小增加。從表中刪除後數據庫大小變大

當我運行sp_spaceused它顯示我2625.25 MB。在我從表中刪除之前,它曾經是〜1800.00 MB。

即使我刪除數據,它是否有任何特定的原因會持續增長?

+5

我不知道tsql,但它可能只是一個臨時事務日誌。 –

+0

這正是我刪除臨時文件後現在就可以的原因。謝謝! http://stackoverflow.com/questions/56628/how-do-you-clear-the-transaction-log-in-a-sql-server-2005-database –

+0

我使它成爲一個社區wiki答案(沒有重點給我;) –

回答

2

臨時事務日誌通常是大量刪除後大小顯着增加的原因。

它最終會自行消失,但如果您需要回收空間,您可能會刪除這些文件。

2

我假設你正在使用SQL Server(sp_spaceused)。記錄刪除,所以你的日誌文件已經增長。

參見如何截斷日誌SQL Server 2008 log will not truncate(取決於您的數據庫和恢復模式),然後就可以運行

DBCC SHRINKFILE(N) 

收回失去的空間

編輯按@Aaron,截斷也是一個記錄操作。答案已更正。

+0

TRUNCATE也記錄了。人們在哪裏瞭解TRUNCATE未記錄的這些神話? –

+0

@Aaron謝謝你指出這一點。我相信我知道我在哪裏找到了這種誤解 - SQL 2000和以前的命令'BACKUP LOG DB WITH TRUNCATE_ONLY'可能將我的(和其他的)突觸與繞過日誌記錄的「截斷」相關聯。 – StuartLC

+0

[截斷雖然明顯少了日誌](http://dba.stackexchange.com/a/7677/3690) –

相關問題