sql 在使用中每次查詢都會生成日志,但是如果你長久不去清理,可能整個硬都堆滿哦,筆者就遇到這樣的情況,直接網(wǎng)站后臺都進不去了,今天到數(shù)據(jù)庫中一看竟然達(dá)到了29G的日志文件,下面我們一起來學(xué)習(xí)一下如何清理這個日志吧
SQL2008清空刪除日志:
方法一:
USE [master]
GO
ALTER DATABASE AFMS SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE AFMS SET RECOVERY SIMPLE
GO
USE AFMS
GO
DBCC SHRINKFILE (N'AFMS_Log' , 11, TRUNCATEONLY)
GO
USE [master]
GO
ALTER DATABASE AFMS SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE AFMS SET RECOVERY FULL
GO
'在SQL2008中清除日志就必須在簡單模式下進行,等清除動作完畢再調(diào)回到完全模式。
USE [master]
GO
ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE DNName SET RECOVERY SIMPLE --簡單模式
GO
USE DNName
GO
DBCC SHRINKFILE (N'DNName_Log' , 11, TRUNCATEONLY)
GO
'這里的DNName_Log 如果不知道在sys.database_files里是什么名字的話,可以用以下注釋的語句進行查詢
'USE DNName
'GO
'SELECT file_id, nameFROM sys.database_files;
'GO
USE [master]
GO
ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE DNName SET RECOVERY FULL --還原為完全模式
GO
SQL2005清空刪除日志:
Backup Log DNName with no_log '這里的DNName是你要收縮的數(shù)據(jù)庫名,自己注意修改下面的數(shù)據(jù)庫名,我就不再注釋了。
go
dump transaction DNName with no_log
go
USE DNName
DBCC 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])
這篇文章就介紹到這了,文中整合了腳本之家以前發(fā)布的文章,需要的朋友可以參考一下。
您可能感興趣的文章:- SQL SERVER日志進行收縮的圖文教程
- SQL Server 2000/2005/2008刪除或壓縮數(shù)據(jù)庫日志的方法
- sql server中錯誤日志errorlog的深入講解
- SQL SERVER 2008數(shù)據(jù)庫日志文件收縮的方法
- SQLServer數(shù)據(jù)庫中開啟CDC導(dǎo)致事務(wù)日志空間被占滿的原因
- Sqlserver2005日志文件太大如何減小
- SQL Server無日志恢復(fù)數(shù)據(jù)庫(2種方法)
- SqlServer數(shù)據(jù)庫提示 “tempdb” 的日志已滿 問題解決方案
- MYSQL SERVER收縮日志文件實現(xiàn)方法