Sql server 我的订阅服务器数据库与发布服务器的连接中断,已过期。我的数据可以保存吗?
我有一个发布者数据库a,我有两个订阅者数据库B和C,它们订阅a。我的应用程序驻留在站点B和C的本地位置,通过复制,B和/或C的更改会相互复制 问题是,自2019年1月31日起,C停止订阅A,而站点C的IT人员对此一无所知(没有警报) 更大的问题是,在此期间,在B使用应用程序的人一直在输入数据,这些数据被复制回A。与此同时,在站点C的人一直在向数据库C添加数据,而数据库C没有被复制回 如果我恢复订阅,它将获取a处的数据并覆盖C,这是一个主要问题,因为我将丢失在此期间在C处添加的数据。因为这是健康数据,这些文件都是加密的,并以xml格式存储,而不仅仅是更新丢失的数据那么简单,因为有些文件是在站点B和站点C之间共享的,这意味着它们会将数据添加到保存的xml树中 例如,如果有人在站点B看到一名患者并输入一张便条,它将更新一个文件。但是如果下周同一个病人去了C点,那里的护士会更新B点更新的文件 在恢复新订阅之前,我不知道如何首先同步回在C上进行的更新Sql server 我的订阅服务器数据库与发布服务器的连接中断,已过期。我的数据可以保存吗?,sql-server,replication,database-replication,merge-replication,Sql Server,Replication,Database Replication,Merge Replication,我有一个发布者数据库a,我有两个订阅者数据库B和C,它们订阅a。我的应用程序驻留在站点B和C的本地位置,通过复制,B和/或C的更改会相互复制 问题是,自2019年1月31日起,C停止订阅A,而站点C的IT人员对此一无所知(没有警报) 更大的问题是,在此期间,在B使用应用程序的人一直在输入数据,这些数据被复制回A。与此同时,在站点C的人一直在向数据库C添加数据,而数据库C没有被复制回 如果我恢复订阅,它将获取a处的数据并覆盖C,这是一个主要问题,因为我将丢失在此期间在C处添加的数据。因为这是健康数
如果任何人有任何建议,将不胜感激,谢谢 我们多年来一直在使用合并复制,有时(例如在数据库更新之后)它会出现奇怪的错误,无论我们如何尝试都无法修复。在所有这些情况下,唯一有效的解决方案是重新初始化订阅,甚至删除并重新创建包含所有订阅的发布 但是,由于这是合并复制的情况,并且在不进行同步时在所有端(即发布服务器和所有订阅服务器)添加新数据,我们不能简单地重新初始化订阅,因为正如您所指出的,在失败订阅服务器端生成的未同步数据将丢失。您的案例甚至更加困难,因为您正在使用加密和XML文件来存储数据。您是否将加密的XML存储为数据库中的blob/clob 然而,我将提供解决方案,这已经为我们工作了很多次。因此,如果合并复制的一个或多个端点失败,则必须采取以下步骤:
操作(如果名称正在使用)
属性设置为保持现有对象不变另外,我与红门和微软都没有任何关系。你好,你的问题解决了吗?或者您已经重新初始化您的订阅了吗?如果没有,我可能会建议一个解决方案,但如果你触发订阅重新初始化,它将不起作用。嘿@andrews not我仍然没有解决它,我也没有再次触发订阅。你有什么想法可以分享吗?非常感谢!我不知道像红门这样的工具存在。这是非常有用的@我拍照片,不客气!希望您能够解决复制问题。复制在工作时很好,它可以在无人值守的情况下工作数月,但当它失败时,会给您带来困难,您开始考虑如何从应用程序中完全删除它。