SQL Server 中的并发备份?

SQL Server 中的并发备份?

我们目前由第三方公司管理备份。我们创建了许多代理作业,用于执行完整备份(每天 4 次)和事务日志备份(每小时 4 次)。

我们现在想在内部管理备份,但在确定内部所有配置均正确之前,不想禁用第三方的作业

因此,我建议花一小段时间(比如说几天)对新旧系统进行备份。

我想知道让这两个不同的系统都管理备份会产生什么后果,以及同时进行备份的潜在隐患。这是否受支持?如果是这样,并且考虑到系统可以处理一次备份而不会出现任何明显的性能下降,那么假设它应该能够处理两次同时备份是否合理?

目前服务器的负载相当轻,很少出现问题。

任何建议都值得赞赏

答案1

如果两个备份同时以相同的时间运行,那么将会遇到问题。

首先,您的交易日志将被分成两个站点,并且您需要所有日志来恢复到最后一笔交易。

此外,备份作业很可能会发生冲突,从而导致一个(或两个)备份语句崩溃,可能在备份中留下空白。

恢复也将更加复杂。

我建议首先保留现有的工作并首先在您的站点上进行每日完整备份,检查这些是否一切正常,然后将事务日志备份从第三方提供商切换到您的备份系统。

当然,测试您的恢复脚本和方案。我假设您的新备份方案会将备份文件放置在远离主服务器的安全位置!

更多信息:SQL Server 备份冲突

答案2

作为上述文章的补充,您可以使用 T-SQL 进行仅复制备份,这样不会破坏第三方公司目前制定的备份计划。根据备份时间以及开始时每天需要进行多少次备份,您可以简单地执行以下操作:

BACKUP DATABASE [database_name]
TO DISK = 'E:\Backups\DBName\20100611-whatever-you-call-it.bak'
WITH COPY ONLY
NAME = 'NameYourBackup'
DESCRIPTION = 'BriefDescriptionOfTheDatabase'

这将创建不会影响当前计划的数据库副本,并将其发送到您要存储备份的任何设备。然后,您可以将数据库还原到测试/开发服务器,以确保它们完好无损并且您想要的一切都在那里。

使用上述代码,您可以将其更改为同时进行事务日志备份,并将代码分步放入 SQL 作业中以便在给定时间进行安排。

更多信息请点击这里:http://msdn.microsoft.com/en-us/library/ms186865.aspx

相关内容