【发布时间】:2018-06-14 19:01:31
【问题描述】:
我们计划将我们的 SQL on Prem 数据库迁移到 azure,这个数据库有很多表,其中很少有非常高事务表(包含数百万条记录),我们希望最大限度地减少应用程序的停机时间和决定使用使用快照的事务复制来复制数据,然后花一些时间从我们的应用程序切换到 Azure 数据库
以下是我们目前在 pre prod 中看到的问题
- 初始时间的表锁定以及来自应用程序的大量请求由于此锁定而失败。我们怎样才能避免这种情况?
- 2 篇文章(数百万行)复制失败,其中一篇几乎完成(90%),其他由于一些数据问题,我们创建了 3 个单独的发布,一个用于其余的小表,另外 2 个用于每个大表。
我知道我们可以重新初始化发布并从头开始,但这会再次延迟切割时间和表锁。
那么我们如何处理这种情况 1,因为我们复制了大部分数据并且我们不想从头开始
我希望你们中的许多人都遇到过这个问题,并且有一些最佳实践可以分享。
【问题讨论】:
-
复制是高度特定于供应商的。您正在使用哪个DBMS 产品? “SQL”只是一种查询语言,不是特定数据库产品的名称。
标签: sql sql-server azure-sql-database database-migration transactional-replication