本文主要是介绍SQL Server 2005 2008 清空删除日志文件 130G日志 10秒内变10M,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
第一步:
清空日志
DUMP TRANSACTION [数据库名称] WITH NO_LOG
第二步:截断事务日志
BACKUP LOG [数据库名称] WITH NO_LOG
第三步:收缩数据库
DBCC SHRINKDATABASE([数据库名称])
SQL2005:
Backup Log DNName with no_log '这里的DNName是你要收缩的数据库名,自己注意修改下面的数据库名,我就不再注释了。
go
dump transaction DNName with no_log
go
USE DNName
DBCC SHRINKFILE (2)
GoSQL2008:
'在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。
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
这篇关于SQL Server 2005 2008 清空删除日志文件 130G日志 10秒内变10M的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!