SQL Server誤區(qū)30日談 第9天 數(shù)據(jù)庫(kù)文件收縮不會(huì)影響性能
誤區(qū) #9: 數(shù)據(jù)庫(kù)文件收縮不會(huì)影響性能
錯(cuò)誤!
收縮數(shù)據(jù)庫(kù)文件唯一不影響性能的情況是文件末尾有剩余空間的情況下,收縮文件指定了TruncateOnly選項(xiàng)。
收縮文件的過(guò)程非常影響性能,這個(gè)過(guò)程需要移動(dòng)大量數(shù)據(jù)從而造成大量IO,這個(gè)過(guò)程會(huì)被記錄到日志從而造成日志暴漲,相應(yīng)的,還會(huì)占去大量的CPU資源。
不僅在收縮的過(guò)程中影響性能,并且在文件收縮之后同樣影響應(yīng)能,收縮產(chǎn)生的大量日志會(huì)被事務(wù)日志傳送,鏡像,復(fù)制能操作重復(fù)執(zhí)行。而空間不夠時(shí),文件還需要填0初始化從而影響性能(除非你開(kāi)啟的不用填零初始化的選項(xiàng))。
這還不算最糟,最糟的結(jié)果是文件收縮造成了大量的索引碎片,對(duì)于scan操作來(lái)說(shuō)這個(gè)碎片影響性能。
不幸的是,收縮數(shù)據(jù)庫(kù)的代碼不是我寫(xiě)的(如果要是我寫(xiě)的話,我一開(kāi)始就不會(huì)允許這種機(jī)制的)所以我們唯一能做的就是接受這種操作。
孩子,記住這一點(diǎn): 簡(jiǎn)單的對(duì)收縮說(shuō)NO就可以讓我們永遠(yuǎn)遠(yuǎn)離其造成的煩惱。
相關(guān)文章
系統(tǒng)存儲(chǔ)過(guò)程sp_MSforeachtable和sp_MSforeachdb使用說(shuō)明
系統(tǒng)存儲(chǔ)過(guò)程sp_MSforeachtable和sp_MSforeachdb2009-09-09sql server創(chuàng)建臨時(shí)表的兩種寫(xiě)法和刪除臨時(shí)表
這篇文章主要介紹了sql server創(chuàng)建臨時(shí)表的兩種寫(xiě)法和刪除臨時(shí)表 ,需要的朋友可以參考下2015-07-07sqlserver Union和SQL Union All使用方法
UNION 操作符用于合并兩個(gè)或多個(gè) SELECT 語(yǔ)句的結(jié)果集。2010-09-09SQL 重復(fù)記錄問(wèn)題的處理方法小結(jié)
SQL 重復(fù)記錄問(wèn)題的處理方法小結(jié),需要的朋友可以參考下。2010-05-05SQL Server中row_number函數(shù)的常見(jiàn)用法示例詳解
這篇文章主要給大家介紹了關(guān)于SQL Server中row_number函數(shù)的常見(jiàn)用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09sql?server實(shí)現(xiàn)圖片的存入和讀取的流程詳解
這篇文章主要介紹了sql?server實(shí)現(xiàn)圖片的存入和讀取的詳細(xì)流程,文中通過(guò)代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-05-05將string數(shù)組轉(zhuǎn)化為sql的in條件用sql查詢
將string數(shù)組轉(zhuǎn)化為sql的in條件就可以用sql查詢了,下面是具體是的示例,大家可以參考下2014-05-05