SQL2005:
Backup Log XXX with no_log --'这里的DNName是你要收缩的数据库名,自己注意修改下面的数据库名,我就不再注释了。 go dump transaction XXX with no_log go USE XXX 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
'这里的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
http://blog.csdn.net/lbuskeep/article/details/7676327