OGG中add trandata的含义是什么

网友投稿 267 2023-12-18

OGG中add trandata的含义是什么

这期内容当中小编将会给大家带来有关OGG中add trandata的含义是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

OGG中add trandata的含义是什么

配置OGG时,需要给同步的表添加补充日志,在ggsci命令行执行

add trandata user.table

该命令实际上包含两层含义:

1)table有PK或UK ,则目标端能准确依据PK或UK找到源端DML更新的数据,从而在目标端同步。

2)table没有PK和UK,则目标端只能依据该table的所有列来找到源端DML更新的数据,从而在目标端同步。

对应此OGG命令,在SQL*PLUS中有等效语法:

1)和第一层含义等效的语法(有主键或唯一键)

alter table user.table add?supplemental log group ggs_table_1 (PK or UK) always;

2)和第二层含义等效的语法(没有主键和唯一键)

alter table user.table add?supplemental log group ggs_table_1 (all column) always;

当某个table的column超过32个字段的时候,使用add trandata就会报错:

WARNING OGG-00706 Failed to add supplemental log group on table user.table due to ORA-02257: maximum number of columns exceeded ......

这个时候,就要使用:

alter table user.table add?supplemental log ...这种方式才可。

此时又分两种情况:

第一情况是列超过32个,但有主键或唯一键:

alter table user.table add?supplemental log group ggs_table_1 (PK or UK) always;

第二情况是列超过32个,没有主键和唯一键:

alter table user.table add?supplemental log group ggs_table_1 (all column <32) always;

alter table user.table add?supplemental log group ggs_table_2 (all colum >32) always;

上述就是小编为大家分享的OGG中add trandata的含义是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:怎么理解Oracle中INITRANS和MAXTRANS参数
下一篇:如何理解ORACLE的回滚段
相关文章

 发表评论

暂时没有评论,来抢沙发吧~