ITPub博客

首页 > Linux操作系统 > Linux操作系统 > goldengate(3)

goldengate(3)

原创 Linux操作系统 作者:www_xylove 时间:2013-03-13 10:15:13 0 删除 编辑

goldengate(3)--超过32个字段且有主键的表如何同步数据,

1. 示例表:test.xy102

create table TEST.XY102
(
  A   VARCHAR2(10) not null,
  B   VARCHAR2(10) not null,
  C   VARCHAR2(10),
  AB  VARCHAR2(10),
  CCC VARCHAR2(10),
  DDE VARCHAR2(10),
  E   VARCHAR2(10),
  F   VARCHAR2(10),
  G   VARCHAR2(10),
  H   VARCHAR2(10),
  I   VARCHAR2(10),
  GG  VARCHAR2(10),
  K   VARCHAR2(10),
  M   VARCHAR2(10),
  N   VARCHAR2(10),
  O   VARCHAR2(10),
  P   VARCHAR2(10),
  Q   VARCHAR2(10),
  R   VARCHAR2(10),
  S   VARCHAR2(10),
  T   VARCHAR2(10),
  X   VARCHAR2(10),
  Y   VARCHAR2(10),
  Z   VARCHAR2(10),
  AA  VARCHAR2(10),
  BB  VARCHAR2(10),
  CC  VARCHAR2(10),
  DD  VARCHAR2(10),
  EE  VARCHAR2(10),
  FF  VARCHAR2(10),
  GGT VARCHAR2(10),
  KK  VARCHAR2(10),
  YY  VARCHAR2(10),
  II  VARCHAR2(10),
  ZZ  VARCHAR2(10)
)
tablespace USERS
  pctfree 10
  initrans 1
  maxtrans 255;
-- Create/Recreate primary, unique and foreign key constraints
alter table TEST.XY102
  add constraint PK_A_B primary key (A, B)
  using index
  tablespace USERS
  pctfree 10
  initrans 2
  maxtrans 255;

表XY102有35个字段,且有主键.

2.源端增加表级别附加日志

ALTER TABLE TEST.XY102
ADD SUPPLEMENTAL LOG GROUP group_xy102_pk (a,b) ALWAYS;
 
3.源端该表插入一条数据
insert into test.xy102 (a,b,c,ab,ccc,dde,e,f,g,h,i,gg)values('aaa','bbb','sh','bj','wh','sz','tj','gz','hu','cs','cq','cj');
commit;
SQL> select * from test.xy102;
 
A          B          C          AB         CCC        DDE        E          F          G          H          I          GG         K          M          N          O          P          Q          R          S          T          X          Y          Z          AA         BB         CC         DD         EE         FF         GGT        KK         YY         II         ZZ
---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
aaa        bbb        sh         bj         wh         sz         tj         gz         hu         cs         cq         cj                                                                                                                                                                                                                                                           
4.目的端查看数据
 
SQL> select * from test.xy102;
 
A          B          C          AB         CCC        DDE        E          F          G          H          I          GG         K          M          N          O          P          Q          R          S          T          X          Y          Z          AA         BB         CC         DD         EE         FF         GGT        KK         YY         II         ZZ
---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
aaa        bbb        sh         bj         wh         sz         tj         gz         hu         cs         cq         cj                         
 
目标端数据复制成功。
 
超过32个字段的表,且有主键或唯一键,增加表级别的附加日志的时候,直接把主键添加就可以了。
 
(不需要字段超过32个字段,有主键,唯一键需要手动增加表级别日志,超过32个字段的表,该表需要增加多个日志组,列如一个表有40个字段,那么
要增加2个日志组(32个字段做一个日志组,8个字段做另外一个日志组)。)
 
当然上面括弧内()也是可以的,但是非常麻烦,而且容易出错。
 
 
 
 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21266384/viewspace-755974/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: golendgate(2)
下一篇: goldengate(4)
请登录后发表评论 登录
全部评论

注册时间:2010-11-12

  • 博文量
    100
  • 访问量
    233038