sql-server - 从命令行或存储过程启动复制订阅者的同步

标签 sql-server database-replication

我们有一个发布者和三个订阅者。同一 LAN 上的两个订阅者和一个远程订阅者。

每天晚上我们都会遇到复制中断且无法重新启动的问题。

消息显示:每个发布商均失败。

我们不确定发生了什么,但在晚上我们安排了维护计划,我怀疑这可能会导致我们的复制下降......

作为一个临时补丁,我想要做的是让一个程序在状态显示“失败”的时间超过 30 分钟时重新启动复制。

我们已经创建了一个检测当前复制状态的程序,因此我们现在需要知道如何以编程方式(存储过程或命令行)重新启动每个订阅者的复制。

我们想要的是打开复制监视器,右键单击订阅者,然后单击“开始同步”时所拥有的确切功能。顺便说一句,当我们每天早上到达办公室时,它会正确启动复制。

最佳答案

基于上述内容,如果您已经有一个程序可以检测复制状态并知道何时需要再次启动它,则应该从命令行执行replmerge。探查器可以提供有关命令行参数的详细信息,您可以执行该命令。

这个post详细介绍了如何从命令行启动此命令。

希望这有帮助。

关于sql-server - 从命令行或存储过程启动复制订阅者的同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34853849/

相关文章:

sql - 如何按 DATEDIFF 对行进行分组?

sql-server - 是否有一种模式/配置文件/权限可以自动回滚用户提交的所有请求?

c# - 参数化查询需要参数 '@Id' ,但未提供

MySQL复制是双向的

mysql - 两个数据库实例未与负载均衡器同步

google-cloud-datastore - Google Datastore 跨区域复制

c# - 使用 Entity Framework,我应该在存储过程中使用 RETURN 还是 SELECT?

sql - Case SQL 语句中 IFF 的等效项

redis master slave replication - 从站上丢失数据

linux - Linux 中的 Mongodb 复制错误