我们有一个较大的数据库 (350GB),它被复制到地理上位于不同位置的订阅者。不幸的是,我们在两个站点之间的连接速度很慢。
今天我们在经销商处收到以下错误:
订阅已被标记为非活动状态,必须重新初始化。
无论如何,我们可以在不从快照重建订阅的情况下将其重新启动吗?
我们有一个较大的数据库 (350GB),它被复制到地理上位于不同位置的订阅者。不幸的是,我们在两个站点之间的连接速度很慢。
今天我们在经销商处收到以下错误:
订阅已被标记为非活动状态,必须重新初始化。
无论如何,我们可以在不从快照重建订阅的情况下将其重新启动吗?
我之前使用过这个技巧来启动复制。假设这些站点的互联网访问速度比它们之间的链接更快。
设置您的复制,但使用两个服务器上都存在的本地路径作为快照位置。运行快照。压缩创建的文本文件(它们会压缩很多)。将文件 FTP 到可以从两个站点访问的外部 FTP 服务器。上传完成后,在其他站点下载它们。解压缩它们并将它们放在正确的文件夹中。在远程站点启动分发代理,以便它读取本地文件并插入本地数据库。一旦它加载了快照,您就可以在您喜欢的任何站点上运行分发代理。
我使用这种技术在美国和中国之间设置复制,并将时间从 43 天缩短到 17 小时,这完全在订阅者超时窗口内。
我也使用了 Denny 的技巧,但您可能还需要优化交通流量以获得最佳速度。您必须调整两个不同的区域,SQL 复制和网络 TCPIP 调整。我在博客http://www.sqlwebpedia.com/content/tcp-optimization-windows上写了 TCPIP ,现在有一个用于复制:http ://www.sqlwebpedia.com/content/transactional-replication-over-wan - 提示HTH
我不相信没有新快照就可以重新初始化,至少我一直不得不这样做,现在我也找不到任何东西。
我以为我看过一些 kb 文章,描述了一种调整慢速连接超时的方法,但这似乎已经消失了,或者可能是一个梦想。
我将继续关注这个空间,看看是否有大师知道方法。
有一个新的 initialize-from-LSN 方法,但它是在 2008 年才引入的。在早期版本(包括 2000 年)中没有办法做到这一点。抱歉。