加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL Server 2008 – 缩小事务日志 – 任何自动化方式?

发布时间:2020-12-12 07:29:38 所属栏目:MsSql教程 来源:网络整理
导读:前几天我进去检查了我的交易日志,它像15GB一样疯狂.我运行了以下代码: USE mydbGOBACKUP LOG mydb WITH TRUNCATE_ONLYGODBCC SHRINKFILE(mydb_log,8)GO 哪个工作正常,缩小到8MB …但有问题的数据库是一个Log Shipping Publisher,日志已经回升到大约500MB并且
前几天我进去检查了我的交易日志,它像15GB一样疯狂.我运行了以下代码:
USE mydb
GO
BACKUP LOG mydb WITH TRUNCATE_ONLY
GO
DBCC SHRINKFILE(mydb_log,8)
GO

哪个工作正常,缩小到8MB …但有问题的数据库是一个Log Shipping Publisher,日志已经回升到大约500MB并且增长很快.

除了创建自定义“执行T-SQL语句任务”维护计划任务以及将其挂钩到我的日志备份任务之外,有没有办法自动化这个日志缩小?如果这是最好的方式那么好……但我只是认为SQL Server会有更好的方法来解决这个问题.我认为它应该在您进行日志备份时自动缩小,但这种情况不会发生(可能是因为我的日志传送,我不知道).

这是我目前的备份计划:

>每晚完整备份
>交易日志备份每天一次,上午晚些时候(也许挂钩日志缩小到这个……不过每天都不需要缩小)

或者也许我在运行完整备份任务后每周运行一次?你们都觉得怎么样?

解决方法

如果文件每晚以500 MB的速度增长,则只有一个正确的操作:将文件预先增长到500MB并保留在那里.缩小日志文件是有害的.使日志文件自动增长也具有破坏性.

>您在正常操作期间点击文件增长零填充初始化,从而降低性能
>您的日志以较小的增量增长,从而创建了许多虚拟日志文件,从而导致较差的运营性能
>缩小期间,您的日志会碎片化.虽然没有数据文件碎片那么糟糕,但日志文件碎片仍会影响性能
>有一天,每天500MB的增长将耗尽磁盘空间,你希望该文件是预先生成的

你不必接受我的话,你可以在一些MVP博客上阅读他们对日志和文件缩减的做法的定期说明:

> Auto-shrink – turn it OFF!
> Oh,the horror! Please stop telling people they should shrink their log files!
> Why you want to be restrictive with shrink of database files
> Don’t Touch that Shrink Button!
> Do not truncate your ldf files!

还有更多,我只是厌倦了链接它们.

每次缩小日志文件时,仙女都会失去翅膀.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读