SQL Server 2008 清除日志

在windows中运行sql server命令需使用sqlcmd命令,这个在安装sql server时会一并安装。

使用sqlcmd进入交互模式下:

之前使用的命令为:

1
2
3
DUMP  TRANSACTION  databasename  WITH  NO_LOG   --清空日志
BACKUP LOG databasename  WITH  NO_LOG         --截断事务日志
DBCC SHRINKDATABASE(databasename)           --收缩数据库

  

上述命令需要按照顺序执行, 通常比直接使用右键菜单中的“收缩”命令要快很多。

但是,这个命令在2008的版本下并不能运行,限于SQL2005~

SQL2008对文件和日志管理进行了优化,使用如下命令:先在简单模式下清除日志,等清除动作完毕再调回到完全模式

 

1
2
3
4
5
6
7
8
ALTER  DATABASE  databasename  SET  RECOVERY SIMPLE  WITH  NO_WAIT
GO
ALTER  DATABASE  databasename  SET  RECOVERY SIMPLE    --简单模式
GO
USE databasename
GO
DBCC SHRINKFILE (N 'databasename_log'  , 11, TRUNCATEONLY)
GO

 

还原为完全模式

1
2
3
4
ALTER  DATABASE  databasename  SET  RECOVERY  FULL  WITH  NO_WAIT
GO
ALTER  DATABASE  databasename  SET  RECOVERY  FULL   --还原为完全模式
GO

猜你喜欢

转载自blog.csdn.net/wenminhao/article/details/79813633