代码之家  ›  专栏  ›  技术社区  ›  Stefan

每4分钟运行一次SQL Server数据库的完整备份的含义

  •  2
  • Stefan  · 技术社区  · 16 年前

    我有一个客户,在一个使用率很高的数据库上,每隔4分钟设置一次数据库到网络路径的完整备份。 我强烈建议客户不要这样做,而是进行事务备份。

    但是,当以这种方式进行完全备份时,可能会发生什么不好的事情呢?除此之外,备份将永远不会有正确的数据,因为在执行备份时数据库正在大量使用。以及服务器的工作负载。

    我与此客户之间存在一些与SQL相关的问题(WebService<-sqlconnection->SQL),希望从技术上了解此备份方案是否可以成为问题的一部分?

    当然,我将在测试和查看事件日志等时停止备份,从而开始调查这一问题。但我很好奇,如果有人直接说“不,这将锁定X和扔Y,是坏的”或其他什么。;)

    4 回复  |  直到 15 年前
        1
  •  3
  •   SqlACID    16 年前

    如果它是一个小数据库,而且我猜它是,它可能不会造成任何伤害,除了一点额外的负载,但如果他们需要确保他们不会丢失数据,他们应该每天进行完整备份和日志备份,每隔几分钟而不是完整备份,并将日志传送到备用服务器,或设置镜像。

        2
  •  2
  •   Elijah Glover    16 年前

    可能您可以运行第二个MSSQL服务器以实现冗余?两台服务器都在RAID镜像中吗?

    或者你可以用 Red Gate 每5分钟备份一次你的数据,它就死了 快速的 你说什么?!!而且有很多压缩/加密功能。我们在一个数据库上每隔10分钟运行一次备份,记录为1英里。没问题!

    你真的要问你的客户为什么要每隔4分钟备份一次数据库?

        3
  •  1
  •   Nathan Neulinger    16 年前

    只要您将数据文件放在MSSQL的“备份模式”中,备份就应该是有效的,但这似乎是一种非常重要的备份方式。即使是“每小时进行一次完整备份,连续进行基于日志的备份”,也将是一个巨大的改进。

    当然,这很大程度上取决于数据库的大小,如果它是5-10meg数据库,开销可能会逆转,但这似乎不太可能。

        4
  •  0
  •   Stephan Eggermont    16 年前

    我猜这是一个小数据库,但一旦它超过4分钟的窗口,您就可以关闭数据库:第二次备份开始,进一步减慢处理和早期备份的速度,等待第三次备份开始…