清理SQL Server 2008日誌文件Cannot shrink log file 2 的解(jiě)決方案
SQL 2008日誌(zhì)文件占了23G硬(yìng)盤空間,而事務日(rì)誌已經截斷(Truncate),實際日誌(zhì)內容很小,1G都不(bú)到,想要釋放日誌文件霸占的多餘(yú)空間。
但是,無論怎(zěn)麽收縮(Shrink)日誌文件(jiàn),空間就是(shì)不能(néng)釋放,總是出現錯誤:
Cannot shrink log file 2 (CNBlogsText_log) because of minimum log space required.
之前解決過類似的問題,也寫過一篇博客-SQL Server 2008事務(wù)日誌清理,當時采(cǎi)用的最終(zhōng)解決方法(fǎ)是:
將恢(huī)複(fù)模式由完整(Full)改為簡單(Simple)
收縮(Shrink)日誌文件
將(jiāng)恢(huī)複模式(shì)由(yóu)簡單(dān)(Simple)改為完整(Full)
一直(zhí)以為這就是終極方法,但(dàn)是竟(jìng)然沒能終結(jié)這(zhè)次遇(yù)到的(de)問題。
經過不懈的(de)努力,終於找到真(zhēn)正的終極方法(fǎ):
1. Detach數據庫(Detach之(zhī)前(qián)一定(dìng)要(yào)屏(píng)蔽所有對這(zhè)個數據庫的寫入操作)
2. 刪除(chú)或重命名日誌文件(jiàn)
3. Attach數(shù)據庫,這時會提示找(zhǎo)不(bú)到日誌文件
4. 移除(Remove)這個找不(bú)到的(de)日誌文件(jiàn),然後(hòu)點擊(jī)Ok進行Attach,SQL Server會(huì)在數據文件所在的文(wén)件(jiàn)夾自動創建一個新的日誌文件(jiàn)完成Attach。
5. 如果日誌文件需要存放在另外(wài)的路徑,要再通(tōng)過Detach/Attach進(jìn)行日誌文件的(de)移動(dòng)操作。
Detach數(shù)據庫
將日誌(zhì)文件移動至新的位置
Attach數據庫,修(xiū)改日(rì)誌(zhì)文件的(de)路(lù)徑並(bìng)完成(chéng)Attach
該終極方法的弊端是(shì)在操作(zuò)期間,被操作的數據庫不能被正(zhèng)常訪問。
關鍵詞(cí):SQL
閱讀本文(wén)後您有什(shí)麽感想(xiǎng)? 已有 人(rén)給出(chū)評價!
- 0
- 0
- 0
- 0
- 0
- 0