【问题标题】:Checkpoint table does not exist even after creating it检查点表即使在创建后也不存在
【发布时间】:2014-09-04 18:14:32
【问题描述】:

我已经为副本 rep1 创建了检查点表 ggate,但仍然出现以下错误:

2014-09-04 23:38:21 错误 OGG-00446 Oracle GoldenGate 交付 Oracle,REP1.prm:检查点表 ggate.checkpoint 不存在。 请使用正确的创建表或重新创建 REP1 组 表。

2014-09-04 23:38:21 错误 OGG-01668 Oracle GoldenGate 交付 Oracle,REP1.prm:进程异常。

谁能告诉我怎么解决?

【问题讨论】:

    标签: oracle-golden-gate


    【解决方案1】:

    在这种情况下你应该:

    1. 您是否实际运行过 ADD CHECKPOINTTABLE?如果不运行它

    2. 检查检查点表是否确实存在于数据库中 - 如果已创建 - 尝试删除它(DROP CHECKPOINTTABLE)并重新创建它(ADD CHECKPOINTTABLE)

    3. 检查 GLOBALS 配置文件中的 checkpoint 参数是否设置正确

    4. 重新启动 MGR 和提取/复制进程

    5. 验证用户是否有权访问数据库中的检查点表(插入、更新、删除权限)

    6. 如果没有任何效果,请在目标数据库上运行 10046 标志并检查 GoldenGate Replicat 进程在数据库上执行的内容以及它实际失败的时间(它想在数据库上执行的操作并尝试执行相同的命令自己)

    【讨论】:

      【解决方案2】:

      这是一个简单的故障排除计划:

      1. 您使用的是传统的非 CDB 数据库还是 PDB?

      2. 您使用的是经典架构还是微服务架构? - 添加检查点表时的不同方法。

      3. 您如何运行 ADD CHECKPOINTTABLE?来自 GGSCI/AdminClient 还是来自 HTML5 页面?

      4. 在经典架构中,您是否在 GLOBALS 中设置了 CHECKPOINTTABLE 参数? (CHECKPOINTTABLE [container.] owner.table)

      5. 您在使用 DBLOGIN USERIDALIAS 时登录数据库的是谁?

      6. 您使用的是什么复制品? - 经典、协调、集成、并行?

      7. 检查表应该在哪里的架构?如果不存在,您可以在 DBA_TABLES 视图中查询检查点表的名称并查看谁拥有它。

      很多时候无法创建 checkpint 表是因为没有更新 GLOBALS 文件和/或以正确的用户身份连接到数据库。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-01-29
        • 1970-01-01
        • 1970-01-01
        • 2012-02-02
        • 1970-01-01
        • 2011-09-06
        • 1970-01-01
        相关资源
        最近更新 更多