SQL server2008r2 日志文件收缩-sql文件

SQL server2008r2 日志文件收缩

一、改为简单模式

# USE db_name
# ALTER DATABASE db_name SET RECOVERY SIMPLE WITH NO_WAIT
# GO
# ALTER DATABASE db_name SET RECOVERY SIMPLE --简单模式
# GO

二、清空日志

# USE db_name
# GO
# DBCC SHRINKFILE ('日志文件名_log', TRUNCATEONLY)
# GO

日志文件名查询

# USE 数据库名
# SELECT file_id, name FROM sys.database_files;

三、改回完全模式

# USE db_name
# ALTER DATABASE db_name SET RECOVERY FULL WITH NO_WAIT
# GO
# ALTER DATABASE db_name SET RECOVERY FULL --还原为完全模式
# GO

还有人用下面这个方法:

  • 先分离数据库,到数据库存放目录更改一下日志文件名称。
  • server 2008,进行附加,会报错。提示找不到日志文件,没有关系,在下方的表格中删除这个日志文件,点击确定,附加成功!
  • server 2008 r2 会自动为找不到日志文件的数据库添加一个日志文件,最后在数据库属性页中设置一下数据库的最大限制就可以了。

这种方法,没有进行收缩日志文件, 而是重新生成一个日志文件。

推荐阅读