sqlserver收縮數(shù)據(jù)庫影響 SQLSERVER有沒有快速收縮數(shù)據(jù)庫的方法?
SQLSERVER有沒有快速收縮數(shù)據(jù)庫的方法?你用數(shù)據(jù)庫管理器選中數(shù)據(jù)庫,先分離,然后再附加,然后再點收縮,收縮的時候先收縮日志文件,一般能收縮很多,記得要填寫數(shù)字啊,比如上面提示能收縮為0,你就填個
SQLSERVER有沒有快速收縮數(shù)據(jù)庫的方法?
你用數(shù)據(jù)庫管理器選中數(shù)據(jù)庫,先分離,然后再附加,然后再點收縮,收縮的時候先收縮日志文件,一般能收縮很多,記得要填寫數(shù)字啊,比如上面提示能收縮為0,你就填個5兆,這樣預留一點空間,而且很快,收縮完日志文件之后再收縮數(shù)據(jù)庫 同理比最小能收縮量大幾兆就可以了,但是收縮數(shù)據(jù)庫比較慢 需要很多時間
收縮數(shù)據(jù)庫是什么意思?
收縮數(shù)據(jù)庫就是把數(shù)據(jù)庫不需要或者沒有用的東西進行資源回收,簡單的說就是數(shù)據(jù)庫壓縮,比如你數(shù)據(jù)庫的很大,你收縮下數(shù)據(jù)庫就不會有那么大了,還有一個辦法就是刪除數(shù)據(jù)庫日志,具體代碼:DUMP TRANSACTION [YZ] WITH NO_LOG --清空日志BACKUP LOG [YZ] WITH NO_LOG --截斷事務日志DBCC SHRINKDATABASE([YZ]) --壓縮數(shù)據(jù)庫DBCC UPDATEUSAGE ([YZ]) --報告和更正 sysindexes 表的不正確內容exec sp_detach_db @dbname="數(shù)據(jù)庫名"exec sp_attach_single_file_db @name="數(shù)據(jù)庫名",@hysname="C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLData數(shù)據(jù)庫名.mdf"
收縮數(shù)據(jù)庫與收縮文件有什么區(qū)別?
收縮數(shù)據(jù)庫數(shù)據(jù)庫中的每個文件都可以通過刪除未使用的頁的方法來減小。盡管數(shù)據(jù)庫引擎會有效地重新使用空間,但某個文件多次出現(xiàn)無需原來大小的情況后,收縮文件就變得很有必要了。數(shù)據(jù)和事務日志文件都可以減小(收縮)。可以成組或單獨地手動收縮數(shù)據(jù)庫文件,也可以設置數(shù)據(jù)庫,使其按照指定的間隔自動收縮。文件始終從末尾開始收縮。例如,如果有個5GB的文件,并且在DBCCSHRINKFILE語句中將target_size指定為4GB,則數(shù)據(jù)庫引擎將從文件的最后一個1GB開始釋放盡可能多的空間。如果文件中被釋放的部分包含使用過的頁,則數(shù)據(jù)庫引擎先將這些頁重新放置到文件的保留部分。只能將數(shù)據(jù)庫收縮到?jīng)]有剩余的可用空間為止。例如,如果某個5GB的數(shù)據(jù)庫有4GB的數(shù)據(jù),并且在DBCCSHRINKFILE語句中將target_size指定為3GB,則只能釋放1GB。自動數(shù)據(jù)庫收縮將AUTO_SHRINK數(shù)據(jù)庫選項設置為ON后,數(shù)據(jù)庫引擎將自動收縮具有可用空間的數(shù)據(jù)庫。此選項可以使用ALTERDATABASE語句來進行設置。默認情況下,此選項設置為OFF。數(shù)據(jù)庫引擎會定期檢查每個數(shù)據(jù)庫的空間使用情況。如果某個數(shù)據(jù)庫的AUTO_SHRINK選項設置為ON,則數(shù)據(jù)庫引擎將減少數(shù)據(jù)庫中文件的大小。該活動在后臺進行,并且不影響數(shù)據(jù)庫內的用戶活動。