因为SQL2008对文件和日志管理进行了优化,因此如下语句在SQL2005中能够运行但在SQL2008中已经被取消:
(SQL2005)数据库
1 Backup Log DataBaseName with no_log 2 go 3 4 dump transaction DataBaseName with no_log 5 go 6 7 USE DataBaseName 8 DBCC SHRINKFILE (2) 9 Go
(SQL2008):
在SQL2008中清除日志就必须在简单模式下进行,等清除动做完毕再调回到彻底模式。优化
1 USE[master] 2 GO 3 ALTER DATABASE DataBaseName SET RECOVERY SIMPLE WITH NO_WAIT 4 GO 5 ALTER DATABASE DataBaseName SET RECOVERY SIMPLE --简单模式 6 GO 7 8 USE DataBaseName 9 GO 10 DBCC SHRINKFILE (N'DataBaseName_Log' , 11, TRUNCATEONLY) 11 GO 12 13 USE[master] 14 GO 15 ALTER DATABASE DataBaseName SET RECOVERY FULL WITH NO_WAIT 16 GO 17 ALTER DATABASE DataBaseName SET RECOVERY FULL --还原为彻底模式 18 GO 19 --将DataBaseName 为要收缩的数据库的名字