暂无图片
OGG报DDL相关错误如何定位到具体表
我来答
分享
豆宇斯
2022-10-17
OGG报DDL相关错误如何定位到具体表

数据库和OGG都是19版本

报错信息如下

ERROR OGG-00519 Fatal error executing DDL replication: error [Error code [1430], ORA-01430: column being added already exists in table], no error handler present.

提示的trail文件

通过logdump看到NAME这里是空的,有什么办法定位到具体表么

我来答
添加附件
收藏
分享
问题补充
9条回答
默认
最新
农夫三拳

实在不行,查源库的dba_objects.LAST_DDL_TIME,根据时间定位,也差不多找到了

暂无图片 评论
暂无图片 有用 1
暂无图片
豆宇斯

源端的归档日志已经被删掉了,logmnr可能不太合适

暂无图片 评论
暂无图片 有用 0
李宏达

能发一下ogg的日志吗?

暂无图片 评论
暂无图片 有用 0
农夫三拳

ggserrorlog里面没有?

复制进程里面加上ddlerror 1430 discard,重启复制进程,然后去discard文件去找

暂无图片 评论
暂无图片 有用 1
豆宇斯
题主
2022-10-17
discard被刷新了。。。
豆宇斯
题主
2022-10-17
ggserrorlog只看到了报错没找到具体sql
农夫三拳
答主
2022-10-17
原来没有ddlerror 1430 discard才会报错卡住,现在新加了ddlerror 1430 discard,会跳过这条ddl,并且把它放到新的discard文件
展开全部评论(1条)
豆宇斯
上传附件:log.log
暂无图片 评论
暂无图片 有用 0
豆宇斯
题主
2022-10-17
这个是ogg的日志
李宏达

12c以后有一个DDL日志,如果开启了的话可以查找,反向推断一下。

  • 参数
ENABLE_DDL_LOGGING
  • 日志路径
$ORACLE_BASE/diag/rdbms/DBNAME/log|ddl
暂无图片 评论
暂无图片 有用 0
豆宇斯
题主
2022-10-17
没开。。。
李宏达

究极办法,条件允许的话搞一个dblink或者中间库,做一个查询对比DDL,或者直接导出 ddl csv用vscode做对比。

暂无图片 评论
暂无图片 有用 0
豆宇斯

感觉应该就是03:23:17这个了,差3秒。。

暂无图片 评论
暂无图片 有用 0
李宏达
2022-10-17
找到表就好办了
豆宇斯


按照LAST_DDL_TIME找到的table如果没问题的话,logdump里的这个就是吧

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
附件列表
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏