2

我需要在同一 SQL Server 上的 Azure 上的两个数据库之间设置持续同步。该数据库大约 2TB,有 2000 个表和大约 2000 万行。

我无法设置 Azure 数据同步,因为每次它都会冻结在 Azure 门户中的“刷新架构”上。我知道有 500 个表的限制,但是在架构可见之前选择少于需要同步的 2000 个表需要很长时间。

我们尝试的另一件事是使用我们想要的第一个数据库中的表来初始化第二个数据库。这些表是空的,然后我们可以在空表上“刷新模式”并设置从成员到集线器的同步。但是,执行此操作时,初始同步不起作用。第二个数据库在门户中保持为空,同步似乎运行正常。

是否有另一种可能与如此大的数据库设置同步?

在空表之间创建数据同步、运行初始同步然后将所有行插入空表是否有帮助?这样,初始同步将起作用(因为没有数据),并且所有其他数据将像将来附加的其他数据一样同步。

编辑:根据以下博客(https://azure.microsoft.com/sv-se/blog/sync-sql-data-in-large-scale-using-azure-sql-data-sync/),您应该明确拒绝对表的权限。我已经这样做了,但是现在在尝试检索架构时出现错误,因为它们的名称中有带有“.”、“[”或“]”的表。即使我拒绝这些表的权限,Azure 也会给出错误(它可能会执行一些查询来获取架构,并且在结果中,仍然显示用户无权访问的表)。

4

0 回答 0