数据库 ‘MessageManage’ 的事务日志已满。若要查明无法重用日志中的空间的原因,请参阅 sys.databases 中的 log_reuse_wait_desc 列。

提供两种办法:(SQL Server2008)

注意:建议使用第一种方法。第二种方法只是删除已有日志文件,日后还会继续生成。

第一种方法:清空日志。

1.打开企业管理器,直接在查询分析器里执行:(如果是FULL完整类型,修改为SIMPLE简单类型)

alter database [数据库名] set recovery simple

或者 右键你要压缩的数据库–属性–选项–恢复模式–简单

数据库 \'MessageManage\' 的事务日志已满。若要查明无法重用日志中的空间的原因,请参阅 sys.databases 中的 log_reuse_wait_desc 列。-1

2.查询分析器,输入命令:(收缩日志文件大小,单位是M)

DBCC SHRINKFILE (N’MessageManage_log’ , 10)

或者 右键你要压缩的数据库–任务–收缩–数据库–直接确认下一步。

数据库 \'MessageManage\' 的事务日志已满。若要查明无法重用日志中的空间的原因,请参阅 sys.databases 中的 log_reuse_wait_desc 列。-2

 

数据库 \'MessageManage\' 的事务日志已满。若要查明无法重用日志中的空间的原因,请参阅 sys.databases 中的 log_reuse_wait_desc 列。-3

第二种方法:
1. 删除LOG
分离数据库 企业管理器->服务器->数据库->任务->分离数据库
2. 删除LOG文件
附加数据库 企业管理器->服务器->数据库->右键->附加数据库

此法生成新的LOG,大小只有500多K。

该方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失。

 

原文链接:,转发请注明来源落伍老站长!

发表评论