SQL Server 收缩事务日志的方法

由于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 为要收缩的数据库的名字

 

你可能感兴趣的:(SQL Server)