我正在尝试使用Tungsten Replicator 文档中概述的并行提取方法来提供 Oracle 到 MySQL 的复制。
- 使用 Tungsten 提供的 setupCDC.sh 脚本在 Oracle 中设置 CDC 表。
- 启动并行提取器,指定前面脚本给出的 CDC 进程的起始 SCN。
- 并行提取器将使用表单的烧瓶查询插入所有现有数据
AS OF SCN ...
,执行具有数据完整性的时间点供应。
问题是 setupCDC 脚本仅在 CDC 是异步的时才打印出 SCN 。在官方论坛帖子中暗示这是为了“为整个模式快照获取一个位置”。
由于许可限制,我只能使用同步CDC。手动读取all_capture
表中记录的 SCN 并将其用于配置是否安全?我有哪些选择可以同时实现数据完整性和最短停机时间?
- 一个。在配置过程中禁用对主数据库的写入操作:
- 这是不可取的,因为我的数据库包含数百 GB 的数据,可能会导致很长的停机时间。
- 湾。在配置期间允许写入操作:在并行提取处理完所有表后,通过正常复制重新应用所有 CDC 数据来修复任何差异。在重新申请期间出现的任何错误都必须被忽略。
- 从数据完整性的角度来看,这是否安全?