我的公司正在将基础架构移至新的数据中心,我正在尝试找出使新服务器上的数据库与当前生产数据库保持同步的最佳方法,直到新环境准备就绪。我不是一名全职的DBA,而是进行了一些研究,从阅读的内容来看,跨国复制设置似乎可以最好地满足我们的需求。
一些细节:生产数据库的大小约为90 GB,使用Robocopy大约需要9个小时才能将其副本移至新服务器中。当前的生产数据库将需要保持联机状态,并且在整个迁移过程中都可以访问。它的恢复很简单,因此数据库镜像不可用。
事务复制是保持数据库同步的最佳方法吗?
我的计划:
- (完成)传输当前数据库并登录到新服务器,并将其附加到SQL Server的新实例
- 在我们的开发数据库计算机上设置分发服务器,然后从生产数据库中发布该分发服务器
- 在新的数据库计算机上创建一个订户,该订户将每晚每晚接受一次从分发服务器推出的更新
我有两件事。事务复制要求每个发布的表都有一个主键,生产数据库中的许多表都没有定义主键。我认为这不会成为太大的问题,因为我主要关心的只是同步数据库。我们将在以后的数据中测试使用数据库的不同应用程序,但我想确保它不是一个严重的问题。其次,是否还需要从原始实例(例如master)中移出任何关联的系统DB?我们将在新环境中迁移到Active Directory设置,因此我不在乎用户等,但是我不确定系统DB的必要性。
总体而言,我是否正确理解了这些概念?