清理SQL Server 2008日志文件Cannot shrink log file 2 的解決方案
SQL 2008日志文件占了23G硬盤空間,而事務(wù)日志已經(jīng)截?cái)啵═runcate),實(shí)際日志內(nèi)容很小,1G都不到,想要釋放日志文件霸占的多余空間。
但是,無(wú)論怎么收縮(Shrink)日志文件,空間就是不能釋放,總是出現(xiàn)錯(cuò)誤:
Cannot shrink log file 2 (CNBlogsText_log) because of minimum log space required.
之前解決過(guò)類似的問題,也寫過(guò)一篇博客-SQL Server 2008事務(wù)日志清理,當(dāng)時(shí)采用的最終解決方法是:
將恢復(fù)模式由完整(Full)改為簡(jiǎn)單(Simple)
收縮(Shrink)日志文件
將恢復(fù)模式由簡(jiǎn)單(Simple)改為完整(Full)
一直以為這就是終極方法,但是竟然沒能終結(jié)這次遇到的問題。
經(jīng)過(guò)不懈的努力,終于找到真正的終極方法:
1. Detach數(shù)據(jù)庫(kù)(Detach之前一定要屏蔽所有對(duì)這個(gè)數(shù)據(jù)庫(kù)的寫入操作)
2. 刪除或重命名日志文件
3. Attach數(shù)據(jù)庫(kù),這時(shí)會(huì)提示找不到日志文件
4. 移除(Remove)這個(gè)找不到的日志文件,然后點(diǎn)擊Ok進(jìn)行Attach,SQL Server會(huì)在數(shù)據(jù)文件所在的文件夾自動(dòng)創(chuàng)建一個(gè)新的日志文件完成Attach。
5. 如果日志文件需要存放在另外的路徑,要再通過(guò)Detach/Attach進(jìn)行日志文件的移動(dòng)操作。
Detach數(shù)據(jù)庫(kù)
將日志文件移動(dòng)至新的位置
Attach數(shù)據(jù)庫(kù),修改日志文件的路徑并完成Attach
該終極方法的弊端是在操作期間,被操作的數(shù)據(jù)庫(kù)不能被正常訪問。
相關(guān)文章
sql server 2008數(shù)據(jù)庫(kù)無(wú)法啟動(dòng)的解決辦法(圖文教程)
sql server 2008數(shù)據(jù)庫(kù)無(wú)法啟動(dòng)的解決辦法(圖文教程),需要的朋友可以參考一下2013-06-06sql2008評(píng)估期已過(guò)的解決辦法及序列號(hào)
sql2008評(píng)估期已過(guò)的解決辦法及序列號(hào),有關(guān)如何升級(jí)您的測(cè)試版軟件的信息2013-02-02圖文詳解Windows Server2012 R2中安裝SQL Server2008
這篇文章主要以圖文結(jié)合的方式向大家推薦Windows Server2012 R2中安裝SQL Server2008的詳細(xì)過(guò)程,感興趣的小伙伴們可以參考一下2015-11-11通過(guò)SQL Server 2008數(shù)據(jù)庫(kù)復(fù)制實(shí)現(xiàn)數(shù)據(jù)庫(kù)同步備份
下面通過(guò)一個(gè)示例和大家一起學(xué)習(xí)一下如何部署SQL Server 2008數(shù)據(jù)庫(kù)復(fù)制2014-08-08SQLServer 2008中SQL增強(qiáng)之一:Values新用途
SQL Server 2008中新增功能:可以使用單個(gè)Insert命令插入多行2011-05-05Sql Server 2008數(shù)據(jù)庫(kù)新建分配用戶的詳細(xì)步驟
當(dāng)一個(gè)項(xiàng)目完成后,為了數(shù)據(jù)安全,總會(huì)對(duì)該項(xiàng)目的數(shù)據(jù)庫(kù)分配一個(gè)用戶,應(yīng)該說(shuō)總會(huì)創(chuàng)建一個(gè)用戶來(lái)管理這個(gè)數(shù)據(jù)庫(kù),并且這個(gè)用戶只能管理這個(gè)數(shù)據(jù)庫(kù),絕對(duì)不要使用sa用戶2017-10-10SQL2008 附加數(shù)據(jù)庫(kù)提示 5120錯(cuò)誤 解決辦法
SQL2008 附加數(shù)據(jù)庫(kù)提示 5120錯(cuò)誤 解決辦法,需要的朋友可以參考一下2013-03-03