SQL Server日志文件過大? ? 大日志文件清理方法 ,網(wǎng)上提供了很多分離數(shù)據(jù)庫——〉刪除日志文件-〉附加數(shù)據(jù)庫 的方法,此方法風(fēng)險(xiǎn)太大,過程也比較久,有時(shí)候也會(huì)出現(xiàn)分離不成功的現(xiàn)象。下面的方式是不需要做數(shù)據(jù)庫分離和附加操作的。
SQL 2008收縮清空日志方法:
1.在SQL2008中清除日志就必須在簡(jiǎn)單模式下進(jìn)行,等清除動(dòng)作完畢再調(diào)回到完整模式,一定必務(wù)要再改回完整模式,不然數(shù)據(jù)庫就不支持時(shí)間點(diǎn)備份了。
1).選擇數(shù)據(jù)庫–屬性—選項(xiàng)—恢復(fù)模式–選擇簡(jiǎn)單。
2).收縮數(shù)據(jù)庫后,再調(diào)回完整。
2.可以用命令直接操作
USE[master]??
GO
ALTER DATABASE 要清理的數(shù)據(jù)庫名稱 SET RECOVERY SIMPLE WITH NO_WAIT
GO??
ALTER DATABASE 要清理的數(shù)據(jù)庫名稱 SET RECOVERY SIMPLE? ?--簡(jiǎn)單模式??
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
90多G的日志文件打開3分多鐘清理完畢
GO