none
数据库日志增长过猛,各位有什么好的办法呢? RRS feed

  • 问题

  • 数据库做了镜像,文件本身并不大也就几个G,每天一次完全备份,操作比较频繁,三天就能产生100G的日志文件,由于做了镜像日志不能收缩(现在做法为删除镜像,收缩后再重新做镜像),这样做大麻烦了,有什么更好的办法吗?

    先谢谢各位朋友们了!


    我是天生我怕谁?
    2009年11月20日 5:21

答案

  • 试过了,没什么效果!
    我是天生我怕谁?

    日志备份可以对日志的inactive部分进行截断,被截断的部分对应的空间就可以被重新利用,在所有可用空间沾满之前,日志文件是不会扩张的。

    楼主是怎么测试出没用的
    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    2009年11月20日 11:04
    版主
  • 如果你仅镜像,而未做日志备份,那这日志会无限地占用和增长。。。
    通常是定期<比如10分钟>备份日志,那么后续的日志备份会重用曾经的非活动日志空间

    但每天三十G的日志,也很不正常,跟踪一下看有什么恶意动作吧

    Try SQL Server 2008 QQ:315054403 dgdba@hotmail.com
    • 已标记为答案 pengzi 2009年12月3日 3:41
    2009年11月20日 13:01
  • 试过了,没什么效果!
    我是天生我怕谁?
    Backup log can prevent log file unreasonable growth but will not shrink log file.
    2009年11月20日 14:12

全部回复

  • 进行日志备份操作,可以有效防止日志文件的扩张。

    http://technet.microsoft.com/zh-cn/dd939047.aspx

    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    2009年11月20日 5:43
    版主
  • 试过了,没什么效果!
    我是天生我怕谁?
    2009年11月20日 6:39
  • 你用的是什么数据库 版本是多少

    如果是sql server 2005以上的版本 
         这样可以减少日志的增加速度 :
                             设置数据库的模式为简单模式   设置日志文件的增加比例为1% (尽可能的小)   因为你每天备份 所以不需要使用完成模式 
                                 
                               不能设置 日志不增加 否则当事务日志满了会导致插入操作不能执行

     当然你可以写个存储过程来定期执行计划压缩日志 这个方法对数据库没有什么影响 除了会产生磁盘碎片以外
                                   语句如下:
                                             select * from sysfiles  --查看日志的编号
                                            dbcc shrinkfile(2,50)      --执行压缩 2代表日志文件  50代表大小 单位是MB
                                          *****执行之前需要将数据库的模式设置成简单模式
                                                        方法: 右键数据库  -属性  -选项-恢复模式 
    2009年11月20日 7:38
  • 是sql server 2005,数据库镜像要求必须为完整模式。


    我是天生我怕谁?
    2009年11月20日 8:57
  • 试过了,没什么效果!
    我是天生我怕谁?

    日志备份可以对日志的inactive部分进行截断,被截断的部分对应的空间就可以被重新利用,在所有可用空间沾满之前,日志文件是不会扩张的。

    楼主是怎么测试出没用的
    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    2009年11月20日 11:04
    版主
  • 如果你仅镜像,而未做日志备份,那这日志会无限地占用和增长。。。
    通常是定期<比如10分钟>备份日志,那么后续的日志备份会重用曾经的非活动日志空间

    但每天三十G的日志,也很不正常,跟踪一下看有什么恶意动作吧

    Try SQL Server 2008 QQ:315054403 dgdba@hotmail.com
    • 已标记为答案 pengzi 2009年12月3日 3:41
    2009年11月20日 13:01
  • 试过了,没什么效果!
    我是天生我怕谁?
    Backup log can prevent log file unreasonable growth but will not shrink log file.
    2009年11月20日 14:12
  • 好,谢谢各位的热心回复!
      我再把备份日志的时间缩短些。
    我是天生我怕谁?
    2009年11月21日 3:48
  •   最好不要去做日志备份压缩数据库;这种模式容易产生碎片,最好给日志文件一个固定大小这样也避免出现磁盘爆满现象;如果采用百分比模式进行增长也会产生碎片。
    2009年11月24日 2:45
  • 频繁的备份,一个小时备份一次事务日志。
    2009年11月24日 3:54
  • 频繁备份始终解决不了问题;在运行高峰期时一般都不建议备份操作。
    2009年11月24日 5:29
  • 频繁备份始终解决不了问题;在运行高峰期时一般都不建议备份操作。
    Where did you get this from?
    2009年11月24日 19:19
  •   最好不要去做日志备份压缩数据库;这种模式容易产生碎片,最好给日志文件一个固定大小这样也避免出现磁盘爆满现象;如果采用百分比模式进行增长也会产生碎片。

    应当定期备份日志.
    如果日志固定大小,当日志填满后, 数据库就无法再进行更新操作了

    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    2009年11月24日 22:55
    版主