暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 19C OGG基础运维-07减少复制表

IT小Chen 2021-04-14
853

场景一:源端extract进程和目标端replicat进程参数文件中通过*来匹配所有表。

场景二:源端extract进程和目标端replicat进程参数文件中没有通过*来匹配所有表,而是指定了固定的表。

场景一:源端extract进程和目标端replicat进程参数文件中通过*来匹配所有表。

例如:

源端:

extract进程

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 87> edit param ext_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 88> view param ext_01

extract ext_01

userid c##ogg@cjcdb,password oracle

GETUPDATEBEFORES

GETTRUNCATES

BR BRINTERVAL 2H

CACHEMGR CACHESIZE 500MB

WARNLONGTRANS 2H,CHECKINTERVAL 5M

NUMFILES 4000

EOFDELAYCSECS 10

LOGALLSUPCOLS

TRANLOGOPTIONS INTEGRATEDPARAMS (max_sga_size 200, parallelism 2)

discardfile ./dirrpt/jcms.dsc,append, megabytes 200

exttrail ./dirdat/ex

DDL INCLUDE ALL

DDLOPTIONS ADDTRANDATA, REPORT

TABLE cjcpdb.cjc.*;

---TABLE cjcpdb.cjc.emp;

---TABLE cjcpdb.cjc.dept;

---TABLE cjcpdb.cjc.bonus;

---TABLE cjcpdb.cjc.salgrade;

---TABLE cjcpdb.cjc.dummy;

---TABLE cjcpdb.cjc.t1;

pump进程

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 89> edit param pump_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 90> view param pump_01

extract pump_01

dynamicresolution

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

userid c##ogg@cjcdb,password oracle

rmthost 192.168.31.100,mgrport 7809,compress

rmttrail ./dirdat/dp

TABLE cjcpdb.cjc.*;

---TABLE cjcpdb.cjc.emp;

---TABLE cjcpdb.cjc.dept;

---TABLE cjcpdb.cjc.bonus;

---TABLE cjcpdb.cjc.salgrade;

---TABLE cjcpdb.cjc.dummy;

---TABLE cjcpdb.cjc.t1;

目标端:

replicat进程

GGSCI (cjcos02) 48> edit param rep_01

GGSCI (cjcos02) 49> view param rep_01

replicat rep_01

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

userid ogg@chenpdb,password oracle

assumetargetdefs

reperror default,discard

discardfile ./dirrpt/replzl.dsc,append,megabytes 50

DDL INCLUDE MAPPED

DDLOPTIONS REPORT

DDLERROR 942 IGNORE

MAP cjcpdb.cjc.*, TARGET chenpdb.chen.*;

---MAP cjcpdb.cjc.emp, TARGET chenpdb.chen.emp;

---MAP cjcpdb.cjc.dept, TARGET chenpdb.chen.dept;

---MAP cjcpdb.cjc.bonus, TARGET chenpdb.chen.bonus;

---MAP cjcpdb.cjc.salgrade, TARGET chenpdb.chen.salgrade;

---MAP cjcpdb.cjc.dummy, TARGET chenpdb.chen.dummy;

---MAP cjcpdb.cjc.t1, TARGET chenpdb.chen.t1;

减少复制表操作:

1 在源端修改extract进程的参数,排除不复制的表。

例如 不复制t1表

源端:

extract参数

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 97> edit param ext_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 98> view param ext_01

extract ext_01

userid c##ogg@cjcdb,password oracle

GETUPDATEBEFORES

GETTRUNCATES

BR BRINTERVAL 2H

CACHEMGR CACHESIZE 500MB

WARNLONGTRANS 2H,CHECKINTERVAL 5M

NUMFILES 4000

EOFDELAYCSECS 10

LOGALLSUPCOLS

TRANLOGOPTIONS INTEGRATEDPARAMS (max_sga_size 200, parallelism 2)

discardfile ./dirrpt/jcms.dsc,append, megabytes 200

exttrail ./dirdat/ex

DDL INCLUDE ALL

DDLOPTIONS ADDTRANDATA, REPORT

tableexclude cjcpdb.cjc.t1;

TABLE cjcpdb.cjc.*;

---TABLE cjcpdb.cjc.emp;

---TABLE cjcpdb.cjc.dept;

---TABLE cjcpdb.cjc.bonus;

---TABLE cjcpdb.cjc.salgrade;

---TABLE cjcpdb.cjc.dummy;

---TABLE cjcpdb.cjc.t1;

pump参数

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 99> edit param pump_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 100> view param pump_01

extract pump_01

dynamicresolution

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

userid c##ogg@cjcdb,password oracle

rmthost 192.168.31.100,mgrport 7809,compress

rmttrail ./dirdat/dp

tableexclude cjcpdb.cjc.t1;

TABLE cjcpdb.cjc.*;

---TABLE cjcpdb.cjc.emp;

---TABLE cjcpdb.cjc.dept;

---TABLE cjcpdb.cjc.bonus;

---TABLE cjcpdb.cjc.salgrade;

---TABLE cjcpdb.cjc.dummy;

---TABLE cjcpdb.cjc.t1;

2 在目标端修改extract进程的参数,排除不复制的表。

目标端:

在map语句上一行添加:mapexclude cjcpdb.cjc.t1;

GGSCI (cjcos02) 53> edit param rep_01

GGSCI (cjcos02) 54> view param rep_01

replicat rep_01

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

userid ogg@chenpdb,password oracle

assumetargetdefs

reperror default,discard

discardfile ./dirrpt/replzl.dsc,append,megabytes 50

DDL INCLUDE MAPPED

DDLOPTIONS REPORT

DDLERROR 942 IGNORE

mapexclude cjcpdb.cjc.t1;

MAP cjcpdb.cjc.*, TARGET chenpdb.chen.*;

---MAP cjcpdb.cjc.emp, TARGET chenpdb.chen.emp;

---MAP cjcpdb.cjc.dept, TARGET chenpdb.chen.dept;

---MAP cjcpdb.cjc.bonus, TARGET chenpdb.chen.bonus;

---MAP cjcpdb.cjc.salgrade, TARGET chenpdb.chen.salgrade;

---MAP cjcpdb.cjc.dummy, TARGET chenpdb.chen.dummy;

---MAP cjcpdb.cjc.t1, TARGET chenpdb.chen.t1;

3 在源端系统上首先验证所需归档日志存在

查看指定进程详细信息

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 79> Info ext_01, detail

查看进程的检查点信息

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 80> Info ext_01, showch

4 重启extract和replicat进程

源端:停止

stop pump_01

stop ext_01 

目标端:停止

stop rep_01 

源端:启动

start pump_01 

start ext_01 

目标端:启动

start rep_01 

5 更新t1表,查看数据库是否同步

源端: 

SQL> conn cjc/cjc@cjcpdb 

SQL> insert into t1 values(80,'CHEN','AAA');

SQL> insert into t1 values(90,'JCH','BBB');

SQL> commit; 

SQL> select * from t1;

    DEPTNO DNAME   LOC

---------- -------------- -------------

10 ACCOUNTING   NEW YORK

20 RESEARCH   DALLAS

30 SALES   CHICAGO

40 OPERATIONS   BOSTON

50 DBA   DUNHUA

60 CJC   DAPUCHAI

70 CHEN    AAA

80 CHEN    AAA

90 JCH   BBB

9 rows selected.

目标端:t1表数据已不在同步

SQL> select * from t1;

    DEPTNO DNAME   LOC

---------- -------------- -------------

10 ACCOUNTING   NEW YORK

20 RESEARCH   DALLAS

30 SALES   CHICAGO

40 OPERATIONS   BOSTON

50 DBA   DUNHUA

60 CJC   DAPUCHAI

70 CHEN    AAA

7 rows selected.

场景二:源端extract进程和目标端replicat进程参数文件中没有通过*来匹配所有表,而是指定了固定的表。

例如:

源端:

extract参数

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 73> edit param ext_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 74> view param ext_01

extract ext_01

userid c##ogg@cjcdb,password oracle

GETUPDATEBEFORES

GETTRUNCATES

BR BRINTERVAL 2H

CACHEMGR CACHESIZE 500MB

WARNLONGTRANS 2H,CHECKINTERVAL 5M

NUMFILES 4000

EOFDELAYCSECS 10

LOGALLSUPCOLS

TRANLOGOPTIONS INTEGRATEDPARAMS (max_sga_size 200, parallelism 2)

discardfile ./dirrpt/jcms.dsc,append, megabytes 200

exttrail ./dirdat/ex

DDL INCLUDE ALL

DDLOPTIONS ADDTRANDATA, REPORT

---TABLE cjcpdb.cjc.*;

TABLE cjcpdb.cjc.emp;

TABLE cjcpdb.cjc.dept;

TABLE cjcpdb.cjc.bonus;

TABLE cjcpdb.cjc.salgrade;

TABLE cjcpdb.cjc.dummy;

TABLE cjcpdb.cjc.t1;

pump参数

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 75> edit param pump_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 76> view param pump_01

extract pump_01

dynamicresolution

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

userid c##ogg@cjcdb,password oracle

rmthost 192.168.31.100,mgrport 7809,compress

rmttrail ./dirdat/dp

---TABLE cjcpdb.cjc.*;

TABLE cjcpdb.cjc.emp;

TABLE cjcpdb.cjc.dept;

TABLE cjcpdb.cjc.bonus;

TABLE cjcpdb.cjc.salgrade;

TABLE cjcpdb.cjc.dummy;

TABLE cjcpdb.cjc.t1;

目标端:

replicat参数

GGSCI (cjcos02) 43> edit param rep_01

GGSCI (cjcos02) 44> view param rep_01

replicat rep_01

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

userid ogg@chenpdb,password oracle

assumetargetdefs

reperror default,discard

discardfile ./dirrpt/replzl.dsc,append,megabytes 50

DDL INCLUDE MAPPED

DDLOPTIONS REPORT

DDLERROR 942 IGNORE

---MAP cjcpdb.cjc.*, TARGET chenpdb.chen.*;

MAP cjcpdb.cjc.emp, TARGET chenpdb.chen.emp;

MAP cjcpdb.cjc.dept, TARGET chenpdb.chen.dept;

MAP cjcpdb.cjc.bonus, TARGET chenpdb.chen.bonus;

MAP cjcpdb.cjc.salgrade, TARGET chenpdb.chen.salgrade;

MAP cjcpdb.cjc.dummy, TARGET chenpdb.chen.dummy;

MAP cjcpdb.cjc.t1, TARGET chenpdb.chen.t1;

减少复制表操作:

1 在源端系统上首先验证所需归档日志存在

查看ext_01进程详细信息

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 79> Info ext_01, detail

查看ext_01进程的检查点信息

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 80> Info ext_01, showch

2 在源端停止extract进程

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 81> stop ext_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 81> stop pump_01

3 在目标端停止replicat进程进程

GGSCI (cjcos02) 45> stop rep_01

4 源端:直接注释掉该表所在table行即可

例如

源端:

extract进程

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 73> edit param ext_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 74> view param ext_01

extract ext_01

userid c##ogg@cjcdb,password oracle

GETUPDATEBEFORES

GETTRUNCATES

BR BRINTERVAL 2H

CACHEMGR CACHESIZE 500MB

WARNLONGTRANS 2H,CHECKINTERVAL 5M

NUMFILES 4000

EOFDELAYCSECS 10

LOGALLSUPCOLS

TRANLOGOPTIONS INTEGRATEDPARAMS (max_sga_size 200, parallelism 2)

discardfile ./dirrpt/jcms.dsc,append, megabytes 200

exttrail ./dirdat/ex

DDL INCLUDE ALL

DDLOPTIONS ADDTRANDATA, REPORT

---TABLE cjcpdb.cjc.*;

TABLE cjcpdb.cjc.emp;

TABLE cjcpdb.cjc.dept;

TABLE cjcpdb.cjc.bonus;

TABLE cjcpdb.cjc.salgrade;

TABLE cjcpdb.cjc.dummy;

---TABLE cjcpdb.cjc.t1;

pump进程 

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 75> edit param pump_01

GGSCI (cjcos01 as c##ogg@cjcdb/CJCPDB) 76> view param pump_01

extract pump_01

dynamicresolution

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

userid c##ogg@cjcdb,password oracle

rmthost 192.168.31.100,mgrport 7809,compress

rmttrail ./dirdat/dp

---TABLE cjcpdb.cjc.*;

TABLE cjcpdb.cjc.emp;

TABLE cjcpdb.cjc.dept;

TABLE cjcpdb.cjc.bonus;

TABLE cjcpdb.cjc.salgrade;

TABLE cjcpdb.cjc.dummy;

---TABLE cjcpdb.cjc.t1;

5 目标端:直接注释掉该表所在MAP行即可

例如: 

目标端:

replicat进程

GGSCI (cjcos02) 43> edit param rep_01

GGSCI (cjcos02) 44> view param rep_01

replicat rep_01

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

userid ogg@chenpdb,password oracle

assumetargetdefs

reperror default,discard

discardfile ./dirrpt/replzl.dsc,append,megabytes 50

DDL INCLUDE MAPPED

DDLOPTIONS REPORT

DDLERROR 942 IGNORE

---MAP cjcpdb.cjc.*, TARGET chenpdb.chen.*;

MAP cjcpdb.cjc.emp, TARGET chenpdb.chen.emp;

MAP cjcpdb.cjc.dept, TARGET chenpdb.chen.dept;

MAP cjcpdb.cjc.bonus, TARGET chenpdb.chen.bonus;

MAP cjcpdb.cjc.salgrade, TARGET chenpdb.chen.salgrade;

MAP cjcpdb.cjc.dummy, TARGET chenpdb.chen.dummy;

---MAP cjcpdb.cjc.t1, TARGET chenpdb.chen.t1;

6 目标端启动replicat进程 

start rep_01 

7 源端启动extract进程

start pump_01 

start ext_01 

8 更新t1表,查看数据库是否同步

源端: 

SQL> conn cjc/cjc@cjcpdb 

SQL> insert into t1 values(70,'CHEN','AAA');

SQL> insert into t1 values(80,'JCH','BBB');

SQL> commit; 

SQL> select * from t1; 

    DEPTNO DNAME   LOC

---------- -------------- -------------

10 ACCOUNTING   NEW YORK

20 RESEARCH   DALLAS

30 SALES   CHICAGO

40 OPERATIONS   BOSTON

50 DBA   DUNHUA

60 CJC   DAPUCHAI

70 CHEN    AAA

80 JCH   BBB

8 rows selected.

目标端:t1表不在同步

SQL> select * from t1; 

    DEPTNO DNAME   LOC

---------- -------------- -------------

10 ACCOUNTING   NEW YORK

20 RESEARCH   DALLAS

30 SALES   CHICAGO

40 OPERATIONS   BOSTON

50 DBA   DUNHUA

60 CJC   DAPUCHAI

6 rows selected.

更多数据库相关学习资料,可以查看我的ITPUB博客,网名chenoracle

http://blog.itpub.net/29785807/

文章转载自IT小Chen,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论