金蝶、管家婆、用友SQL2008 R2數(shù)據(jù)庫(kù).ldf日志文件過(guò)大如何進(jìn)行收縮瘦身?
[重要通告]如您遇疑難雜癥,本站支持知識(shí)付費(fèi)業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時(shí)間哦!
大家在使用財(cái)務(wù)軟件的時(shí)候,會(huì)經(jīng)常發(fā)現(xiàn)數(shù)據(jù)庫(kù)的.ldf日志文件過(guò)大,畢竟各種訪問(wèn)操作都在.ldf日志文件里,在不經(jīng)意間可能就有個(gè)上百G甚至幾百G的文件,搞的盤都快崩了,其實(shí)數(shù)據(jù)很少,無(wú)非上百M(fèi)或者幾百M(fèi)的文件,那如何給.ldf日志文件瘦身減肥呢?來(lái)說(shuō)一下;
SQL Server 隨著運(yùn)行時(shí)間變長(zhǎng),數(shù)據(jù)量變大,【.ldf】日志文件會(huì)變得越來(lái)越大,當(dāng)日志文件過(guò)大時(shí),有可能引起數(shù)據(jù)庫(kù)運(yùn)行變慢,數(shù)據(jù)讀寫不正常等問(wèn)題??梢酝ㄟ^(guò)以下方法對(duì)日志文件進(jìn)行瘦身,具體步驟如下:
SQL2008 R2數(shù)據(jù)庫(kù).ldf日志文件過(guò)大收縮瘦身的方式方法(收縮SQL數(shù)據(jù)庫(kù)日志)
寫在最前面,任何數(shù)據(jù)操作都需要備份,免得沒有后悔藥,不會(huì)操作的情況下還是找官方或者專業(yè)人事(比如老梁,狗頭保命),切勿拿自己的心血嘗試玩耍;
1、【開始】菜單 - 選擇【Microsoft SQL Server 2008 R2】 - 【SQL Server Management Studio】;
2、選擇或輸入【服務(wù)器名稱或者一個(gè)點(diǎn)(不是句號(hào))】- 選擇身份驗(yàn)證方式 - Windows身份驗(yàn)證,連接SQL服務(wù)器;
3、 在SQL SERVER Management Studio 中---右擊需要收縮數(shù)據(jù)庫(kù)文件選擇“屬性”---》“選項(xiàng)”,將恢復(fù)模式由默認(rèn)的“完整”改為“簡(jiǎn)單”。
4、再次右鍵選擇數(shù)據(jù)庫(kù)的“任務(wù)”--》“收縮”---》“文件”菜單,進(jìn)入收縮文件頁(yè)面,
5、將(要收縮的)文件類型選定為“日志”, 將頁(yè)面下面的“收縮操作”單選框里選擇“在釋放未使用的空間前重新組織頁(yè),將文件收縮到:”,然后填寫合適的收縮后的日志文件大小。比如輸入10M或者100M都可以;
最后點(diǎn)擊這個(gè)頁(yè)面下面的“確定”按鈕,以執(zhí)行收縮文件(日志)操作。執(zhí)行完畢后,用戶可以查到該日志文件收縮到指定的大小。
6、特別重要--再回到剛才變?yōu)楹?jiǎn)單哪里,數(shù)據(jù)庫(kù)恢復(fù)模式修改為完整,切記;(一定要操作)
關(guān)于數(shù)據(jù)庫(kù).ldf日志文件的延伸閱讀:
1、SQL語(yǔ)句來(lái)縮小(收縮)數(shù)據(jù)庫(kù).ldf日志文件
下面的數(shù)據(jù)庫(kù)為要收縮的數(shù)據(jù)庫(kù)名稱 –SQL Server 2008R2 收縮日志? -------改變數(shù)據(jù)庫(kù)模式(簡(jiǎn)單)
alter database 數(shù)據(jù)庫(kù) set recovery simple
DBCC SHRINKFILE (N’數(shù)據(jù)庫(kù)_log’ , 10) --將日志文件改為10M
----------恢復(fù)數(shù)據(jù)庫(kù)模式(完整)
alter database 數(shù)據(jù)庫(kù) set recovery full
上面代碼依次執(zhí)行,可以收縮日志文件;
2、SQL 2008R2 日志文件過(guò)大,且收縮無(wú)效,
將數(shù)據(jù)庫(kù)恢復(fù)模式設(shè)置為“簡(jiǎn)單”,再收縮文件-日志,發(fā)現(xiàn)無(wú)效。
判斷原因:數(shù)據(jù)庫(kù)搭建了復(fù)制,沒有清除干凈,無(wú)法截?cái)嗍挛锶罩尽?/p>
執(zhí)行
SELECT name,log_reuse_wait_desc FROM sys.databases where name='dbname'
或者執(zhí)行
SELECT log_reuse_wait , log_reuse_wait_desc FROM sys.databases WHERE name='dbname'
正常時(shí)log_reuse_wait_desc列應(yīng)該是NOTHING,如果是REPLICATION,則表示搭建了事務(wù)復(fù)制,
exec sp_removedbreplication 'dbname' //清除復(fù)制狀態(tài)
再執(zhí)行----收縮->文件->日志。
log_reuse_wait 值log_reuse_wait_desc 值說(shuō)明
根據(jù)返回的 log_reuse_wait 值和 log_reuse_wait_desc 描述,可以發(fā)現(xiàn)日志不能截?cái)嗟脑颉?/p>
問(wèn)題未解決?付費(fèi)解決問(wèn)題加Q或微信 2589053300 (即Q號(hào)又微信號(hào))右上方掃一掃可加博主微信
所寫所說(shuō),是心之所感,思之所悟,行之所得;文當(dāng)無(wú)敷衍,落筆求簡(jiǎn)潔。 以所舍,求所獲;有所依,方所成!