sql 在使用中每次查詢都會生成日志,但是如果你長久不去清理,可能整個硬都堆滿哦,筆者就遇到這樣的情況,直接網(wǎng)站后臺都進(jìn)不去了,今天到數(shù)據(jù)庫中一看竟然達(dá)到了29G的日志文件,下面我們一起來學(xué)習(xí)一下如何清理這個日志吧
SQL2008清空刪除日志:
方法一:
USE [master]GOALTER DATABASE AFMS SET RECOVERY SIMPLE WITH NO_WAITGOALTER DATABASE AFMS SET RECOVERY SIMPLEGOUSE AFMSGODBCC SHRINKFILE (N'AFMS_Log' , 11, TRUNCATEONLY) GOUSE [master]GOALTER DATABASE AFMS SET RECOVERY FULL WITH NO_WAITGOALTER DATABASE AFMS SET RECOVERY FULLGO
'在SQL2008中清除日志就必須在簡單模式下進(jìn)行,等清除動作完畢再調(diào)回到完全模式。
USE [master]GOALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAITGOALTER DATABASE DNName SET RECOVERY SIMPLE --簡單模式GOUSE DNNameGODBCC SHRINKFILE (N'DNName_Log' , 11, TRUNCATEONLY) GO '這里的DNName_Log 如果不知道在sys.database_files里是什么名字的話,可以用以下注釋的語句進(jìn)行查詢 'USE DNName 'GO 'SELECT file_id, nameFROM sys.database_files; 'GOUSE [master]GOALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAITGOALTER DATABASE DNName SET RECOVERY FULL --還原為完全模式GO
SQL2005清空刪除日志:
Backup Log DNName with no_log '這里的DNName是你要收縮的數(shù)據(jù)庫名,自己注意修改下面的數(shù)據(jù)庫名,我就不再注釋了。godump transaction DNName with no_log goUSE DNNameDBCC SHRINKFILE (2)Go
sqlserver2000壓縮日志
可以將jb51.ldf文件變得很小,方便備份數(shù)據(jù)庫等,在sqlserver查詢分析器中執(zhí)行即可。
DUMP TRANSACTION [jb51] WITH NO_LOG BACKUP LOG [jb51] WITH NO_LOG DBCC SHRINKDATABASE([jb51])
這篇文章就介紹到這了,文中整合了武林網(wǎng)以前發(fā)布的文章,需要的朋友可以參考一下。
新聞熱點(diǎn)
疑難解答
圖片精選