一、改为简单模式
# 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 会自动为找不到日志文件的数据库添加一个日志文件,最后在数据库属性页中设置一下数据库的最大限制就可以了。
这种方法,没有进行收缩日志文件, 而是重新生成一个日志文件。