スプリットOGG REPLICATプロセス

1. OGG REPLICATプロセスを分割

粒度Replicat分割処理とは、十分に詳しくない場合は、選択的なチューニングプロセスのための最善の方法は、Replicat分割です。
このような配信キューデータの要件を満たすことができない単一Replicatとして、それはテーブルに従って分割し、それぞれがテーブルの異なるセットを処理することができ、ビジネスReplicatに関わる同じテーブルを(一時的に禁止するリストとの整合性を確保できることを確認してみてください外部キーリンク)がReplicatを確実に分割することができます

 

1.1。分割するプロセスを停止します

GGSCI (cndba) 11> stop rep1

Sending STOP request to REPLICAT REP1 ...
Request processed.

1.2。SEQNOの分割プロセスとRBA番号を表示するには

GGSCI (cndba) 12> info rep1

REPLICAT   REP1      Last Started 2018-06-11 21:18   Status STOPPED
Checkpoint Lag       00:00:00 (updated 00:00:58 ago)
Log Read Checkpoint  File ./dirdat/et000024
                     2018-06-11 21:58:22.004321  RBA 1324
说明当前的进程读到第24个队列,而且RBA号1314的位置。

1.3。編集・パラメータ・ファイルのための新しいプロセスを作成するには、ここに呼ばREP2

edit params rep2
REPLICAT rep2
--setenv (ORACLE_SID=cndba)
--SETENV (ORACLE_HOME = "/u01/app/oracle/product/11.2.0/db_1")
USERID ogg,PASSWORD ogg
ASSUMETARGETDEFS
--HANDLECOLLISIONS
REPERROR (DEFAULT, DISCARD)
DDLERROR DEFAULT DISCARD
DDLOPTIONS REPORT
DISCARDFILE ./dirrpt/repr2.dsc,append,megabytes 100
--HANDLECOLLISIONS
MAP test.test2, TARGET test.test2;

1.4。REP2プロセスグループの追加、およびテールファイルを追加

GGSCI (cndba) 17> add replicat rep2, exttrail ./dirdat/et, checkpointtable ogg.checkpoint
REPLICAT added.

1.5。REP2同じ変更ポインタとREP1

GGSCI (cndba) 18> alter rep2,extseqno 24 extrba 1324
REPLICAT altered.

1.6。REP2及び長一貫性のある状態にREP1ポインタの変更を再確認

GGSCI (cndba) 22> info rep1

REPLICAT   REP1      Last Started 2018-06-11 21:18   Status STOPPED
Checkpoint Lag       00:00:00 (updated 00:14:17 ago)
Log Read Checkpoint  File ./dirdat/et000024
                     2018-06-11 21:58:22.004321  RBA 1324

GGSCI (cndba) 30> info rep2

REPLICAT   REP2      Initialized   2018-06-12 00:22   Status STOPPED
Checkpoint Lag       00:00:00 (updated 00:00:04 ago)
Log Read Checkpoint  File ./dirdat/et000024
                     First Record  RBA 1324

1.7。常に除外、または重複したデータがあるだろうスプリットREP2テーブルにREP1を取ることを忘れないでください

edit params rep1
tableexclude test.test2

1.8。REP1およびREP2を開始

GGSCI (cndba) 32> start rep1

Sending START request to MANAGER ...
REPLICAT REP1 starting

GGSCI (cndba) 33> start rep2

Sending START request to MANAGER ...
REPLICAT REP2 starting


GGSCI (cndba) 34> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                           
REPLICAT    RUNNING     REP1        00:00:00      00:00:08    
REPLICAT    RUNNING     REP2        00:00:00      00:00:04

1.9。テスト

--源端插入数据
SQL>  insert into test2 values(1,'zhangsan');

1 row created.

SQL> commit;

Commit complete.

SQL> insert into test values(50,'test');

1 row created.

SQL> commit;

Commit complete.

SQL> select count(*) from test;

  COUNT(*)
----------
 40
--目标端查看数据
SQL> select * from test2;

 ID NAME
---------- --------
  1 zhangsan

SQL> select count(*) from test;

  COUNT(*)
----------
 40
到这个ogg 就把比较慢的进程拆分到不同的两个进程里面,入库就会明显地加快。
对ogg 调优其实就是对一些参数做相应的调整。入库比较慢就要对Replicat进程进行拆分,而且很多时候对ogg 的瓶颈就是Replicat进程,大多数时候调优发送在容灾端。

おすすめ

転載: blog.csdn.net/leo__1990/article/details/92579281