首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在没有停机的情况下使用同步CDC提供Oracle到MySQL的复制?

如何在没有停机的情况下使用同步CDC提供Oracle到MySQL的复制?
EN

Stack Overflow用户
提问于 2014-12-08 11:15:45
回答 1查看 574关注 0票数 0

我试图使用钨复制器文档中概述的并行提取方法提供Oracle到MySQL的复制。

  1. 使用Tungsten提供的setupCDC.sh脚本在Oracle中安装CDC表。
  2. 启动并行提取器,指定前面脚本给出的CDC进程的启动SCN。
  3. 并行提取器将使用表单AS OF SCN ...的flaskback查询插入所有现有数据,执行具有数据完整性的实时配置。

问题是setupCDC脚本打印出一个SCN 只有当疾控中心。它在官方论坛的帖子中暗示这是给“为整个架构快照获取一个位置。”

由于许可证限制,我只能使用同步CDC。手动读取all_capture表中记录的SCN并将其用于配置是否安全?什么是我的选择,可以实现数据的完整性和最低停机时间?

  • a.在准备过程中禁用对主数据库的写操作:
    • 这是不可取的,因为我的数据库保存了数百千兆字节的数据,可能导致长时间的停机。

  • 在准备过程中允许写入操作:在并行提取处理所有表之后,通过正常复制重新应用所有CDC数据来修复任何差异。在重新应用期间引发的任何错误都将被忽略。
    • 从数据完整性的角度来看,这是否安全?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-20 04:14:17

手动读取all_capture表中记录的SCN并将其用于配置是否安全?

对于同步CDC,all_capture表中没有条目,这是用于异步捕获进程的。

相反,每个更改表都在创建SCN时记录SCN。您可以从change_tables表中确定最低的SCN,并将其作为配置命令:trepctrl online -provision <scn>的参数。

代码语言:javascript
复制
SQL> COL scn FORMAT 999999999999999
SQL> SELECT MIN(created_scn) scn FROM change_tables WHERE change_set_name = 'TUNGSTEN_CS_{service_name}';

(将{service_name}替换为您自己的服务名称。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27356778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档