sql server 2012日志文件超大,清除日志的处理过程

有一个项目使用了sql server2012版本的数据库,一开始可能没有注意到日志文件,使得日志文件越来越大,当使用sql2008的收缩文件的方法进行操作时,问题出现了。

DUMP TRANSACTION BigData WITH NO_LOG BACKUP LOG BigData WITH NO_LOG

使用上面的方法并不能解决问题,因为2012已经不支持transaction了。

通过百度搜索了大量前人的解决方式,最终找到一个解决的办法:

 

通过select log_reuse_wait_desc from sys.databases where name='DBNAME'确认log状态

查询到是LOG_BACKUP,所以我的解决办法就

 


USE [zezx56com_db_2015]

GO

ALTER DATABASE zezx56com_db_2015 SET RECOVERY SIMPLE WITH NO_WAIT

GO

ALTER DATABASE zezx56com_db_2015 SET RECOVERY SIMPLE --简单模式

GO

USE zezx56com_db_2015

GO

DBCC SHRINKFILE (N'zezx56com_db_2015_Log' , 11, TRUNCATEONLY) 


GO


USE zezx56com_db_2015

GO

ALTER DATABASE zezx56com_db_2015 SET RECOVERY FULL WITH NO_WAIT

GO

ALTER DATABASE zezx56com_db_2015 SET RECOVERY FULL --还原为完全模式

GO

 

最后再运行下收缩工具即可

    相关文章

评论

发表新评论

此内容将保密,不会被其他人看见。
点击刷新验证码
  • 可用的 UBB 标签:
  • 留言最长字数:1000。