首页 > 其他 > 详细

事务日志管理--如何收缩日志文件

时间:2015-10-13 22:29:59      阅读:260      评论:0      收藏:0      [点我收藏+]

管理不正确的日志记录最终将填满磁盘导致没有更多的空间去记录新的数据库操作而使操作失败。事务日志持续增长可以为几个不同的原因。长时间运行的事务、 不正确的恢复模型配置等。日志截断将释放日志文件中的空间,所以事务日志可以重用它。除非有某种意外耽搁,日志截断将发生自动检查点 (如果数据库是在简单恢复模式) 或之后一次日志备份 (如果数据库是在完整或大容量日志恢复模式)。

下面是两种收缩日志方式。

使用SQL Server Management Studio 收缩日志

直接上图

step 1:

技术分享

 

技术分享

使用TSQL收缩日志文件

如果你的数据库备份是简单恢复模式,可以使用 DBCC SHRINKFILE。

例如,收缩日志文件AdventureWorks2012_log到1MB。

DBCC SHRINKFILE (AdventureWorks2012_log, 1)

 

如果数据库是完整备份模式,需要先把它变成简单恢复模式,在使用DBCC SHRINKFILE。如果需要继续变成完整备份模式。

代码如下:

        ALTER DATABASE AdventureWorks2012
        SET RECOVERY SIMPLE
        GO
        DBCC SHRINKFILE (AdventureWorks2012_log, 1)
        GO
        ALTER DATABASE AdventureWorks2012
        SET RECOVERY FULL

 

你可以通过以下命令去找到你所需要的日志文件名

SELECT name FROM sys.master_files WHERE type_desc = LOG

 

另一方面,在完整备份模式下,可以使用 BACKUP LOG 去备份日志。命令如下

BACKUP LOG AdventureWorks2012 TO DISK = C:\AdventureWorks.TRN

事务日志管理--如何收缩日志文件

原文:http://www.cnblogs.com/terrence/p/4875979.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!