加入收藏 | 设为首页 | 会员中心 | 我要投稿 南京站长网 (https://www.025zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – SQL Server OLEDB / ODBC复制的安全初始同步

发布时间:2020-12-25 03:44:50 所属栏目:MsSql教程 来源:网络整理
导读:我正在尝试设置从SQL Server 2008 R2到PostgreSQL 9.1的单向事务复制.我正在尝试PGNP OLE DB提供程序. 我可以成功创建订阅,并且事务确实复制到PG服务器.我在订阅上使用sync_type =’none’,因为看起来,否则,架构(包括SQL Server特定选项(SET ANSI_NULLS ON

我正在尝试设置从SQL Server 2008 R2到PostgreSQL 9.1的单向事务复制.我正在尝试PGNP OLE DB提供程序.

我可以成功创建订阅,并且事务确实复制到PG服务器.我在订阅上使用sync_type =’none’,因为看起来,否则,架构(包括SQL Server特定选项(SET ANSI_NULLS ON等))会被发送到PostgreSQL,这会搞砸它.

这很好,我可以使用SSIS并复制整个数据库,包括数据.我的问题是,我怎样才能以安全的方式做到这一点?因为如果我只是运行SSIS包来导出数据,那么添加订阅,事务可能会丢失.

例如. SSIS将数据导出到PG.第X行已更新.复制开始.在这种情况下,行X的更新不会在我的手动同步中,而是在之后开始复制.我无法运行复制,因为可能会发生其他错误.

这里的正确程序是什么?

解决方法

我有好几次类似的问题.这样做的诀窍是设置2个订阅

>您当前设置的那个
>另一个到sql server数据库,它将同步“正常”

所以这是整个过程:

>配置一个sql server订阅者,根据需要同步它,重要的是确保该订阅者正确同步
>将复制配置为postgres.注意在postgres中创建所有目标表,但不关心数据同步.
>在此阶段,当您修改主数据库上的数据时,它将复制到两个从属服务器上.现在,您在分销商处停止le LOG READER代理.而你等待(感谢复制监视器),两个订阅代理都已经处理了所有交易给两个订阅者.
>截断POSTGRES订阅者的所有复制表
>将所有表从SQL订阅服务器(不是主服务器!!)复制到Postgres订阅服务器.
>两个用户现在拥有完全相同的数据!
>启动日志读取器代理.你完成了

请注意,当日志读取器代理停止时,发布服务器上的事务将停留在发布服务器的日志中.所以要注意不要让它充分发挥.步骤5(复制数据)可能很长,因此在主服务器上配置足够大的日志(取决于事务量).

顺便说一句,如果你将sync_type设置为’automatic’,那么snapshost代理将生成一个快照,该快照也将被正确同步.哪里是我的赏金?

(编辑:南京站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读