2

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

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

我与该客户有几个与 sql 相关的问题 (webservice<-sqlconnection->sql),并且想从技术上了解此备份方案是否可能是问题的一部分?

当然,我将通过在测试时停止备份并查看事件日志等来开始对此进行调查。但我很好奇是否有人可以直接说“不,这会锁定 X 并抛出 Y 并且很糟糕”或其他什么。;)

4

4 回答 4

3

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

于 2009-01-19T14:44:03.500 回答
2

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

或者您可以使用Red Gate 之类的工具每 5 分钟备份一次数据。它快死了!并且有很多压缩/加密。我们每 10 分钟对一个包含 100 万条记录的数据库进行备份。没问题!

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

于 2009-01-19T14:40:48.873 回答
1

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

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

于 2009-01-19T14:42:04.503 回答
0

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

于 2009-01-19T16:18:07.243 回答