SQL Server 清空日志文件

遇到数据库清空日志方面的问题,上网搜了一下,觉得有用收录下来。原网址是http://blog.csdn.net/lbuskeep/article/details/7676327

SQL2005:
Backup Log DNName with no_log  --这里的DNName是你要收缩的数据库名,自己注意修改下面的数据库名。
go
dump transaction DNName with no_log
go
USE DNName
DBCC SHRINKFILE (2)
Go

SQL2008:
--在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

USE [master]
GO
ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE DNName SET RECOVERY FULL --还原为完全模式
GO

--这里的DNName_Log 如果不知道在sys.database_files里是什么名字的话,可以用以下注释的语句进行查询
USE DNName
GO
SELECT file_id, nameFROM sys.database_files;
GO

猜你喜欢

转载自ruain.iteye.com/blog/2155826