SQLServer日志文件過大,不分離數(shù)據(jù)庫清理大日志文件方法 


SQL Server日志文件過大    大日志文件清理方法 ,網(wǎng)上提供了很多分離數(shù)據(jù)庫——〉刪除日志文件-〉附加數(shù)據(jù)庫 的方法,此方法風(fēng)險太大,過程也比較久,有時候也會出現(xiàn)分離不成功的現(xiàn)象。下面的方式是不需要做數(shù)據(jù)庫分離和附加操作的。


SQL 2008收縮清空日志方法:

1.在SQL2008中清除日志就必須在簡單模式下進行,等清除動作完畢再調(diào)回到完整模式,一定必務(wù)要再改回完整模式,不然數(shù)據(jù)庫就不支持時間點備份了。
1).選擇數(shù)據(jù)庫–屬性—選項—恢復(fù)模式–選擇簡單。
2).收縮數(shù)據(jù)庫后,再調(diào)回完整。
2.可以用命令直接操作


100多G的日志文件打開3分多鐘清理完畢


數(shù)據(jù)庫可執(zhí)行代碼:

    USE[master]
    GO
    ALTER DATABASE 要清理的數(shù)據(jù)庫名稱 SET RECOVERY SIMPLE WITH NO_WAIT
    GO
    ALTER DATABASE 要清理的數(shù)據(jù)庫名稱 SET RECOVERY SIMPLE   --簡單模式
    GO
    USE 要清理的數(shù)據(jù)庫名稱
    GO
    DBCC SHRINKFILE (N'要清理的數(shù)據(jù)庫名稱_log' , 2, TRUNCATEONLY)  --設(shè)置壓縮后的日志大小為2M,可以自行指定
    GO
    USE[master]
    GO
    ALTER DATABASE 要清理的數(shù)據(jù)庫名稱 SET RECOVERY FULL WITH NO_WAIT
    GO
    ALTER DATABASE 要清理的數(shù)據(jù)庫名稱 SET RECOVERY FULL  --還原為完全模式
    GO


原文鏈接:SQLServer日志文件過大,不分離數(shù)據(jù)庫清理大日志文件方法