OGG實驗:餵奶間隔數據表通過OGG配置同步

  • 2020 年 2 月 18 日
  • 筆記

我之前在《使用SQL計算寶寶每次吃奶的時間間隔(數據保障篇)》中提到數據實時同步的方案,其中有一種是數據表通過OGG進行同步,當時沒有詳細展開測試,只給了之前學習OGG時的配置示例。由於之前很少接觸OGG的管理運維,最近在進行實際測試時遇到些問題,雖然不難,但也是初學者常遇到的問題,所以記錄下這個過程。

需求:將TEST用戶下的數據表T_BABY通過OGG進行同步。 環境: 源端:RHEL6.5, IP地址:192.168.1.61 Oracle 11.2.0.4 RAC(2 nodes)+ OGG 12.2.0.2 待同步數據表test.t_baby已有數據

目標端:OEL5.7, IP地址:192.168.1.11 Oracle 11.2.0.3 單實例 + OGG 12.2.0.2

數據表通過OGG配置同步:

  • 1.源端和目標端軟體安裝部署
  • 2.源端配置
  • 3.目標端配置
  • 4.實驗中遇到的問題處理

1.源端和目標端軟體安裝部署

在源端和目標端都部署OGG 12.2.0.2,使用圖形介面安裝,默認選擇安裝完成後自動啟動mgr進程,安裝截圖類似如下:

2.源端配置

首先確認資料庫是否處于歸檔模式,是否開啟force logging和資料庫最小附加日誌:

select log_mode,supplemental_log_data_min,force_logging from v$database;

特殊參數enable_goldengate_replication設置:

alter system set enable_goldengate_replication=true scope=both;

2.1 資料庫開啟最小附加日誌、歸檔模式、force logging

--1) RAC開啟歸檔模式  srvctl stop database -d demo  sqlplus / as sysdba  startup mount  alter database archivelog;  alter database open;  srvctl start database -d demo    --2)開啟force logging  alter database force logging;    --3)開啟資料庫最小附加日誌  alter database add supplemental log data;

開啟後再次檢查確認資料庫已經處于歸檔模式、開啟了force logging和資料庫最小附加日誌:

sys@DEMO> select log_mode,supplemental_log_data_min,force_logging from v$database;    LOG_MODE     SUPPLEME FOR  ------------ -------- ---  ARCHIVELOG   YES      YES

2.2 需要同步的表開啟詳細附加日誌 在GGSCI命令行下,使用"add trandata user.table_name"開啟表的詳細附加日誌。

GGSCI (jystdrac1) 1> add trandata test.t_baby;  ERROR: Not logged into database, use DBLOGIN.    GGSCI (jystdrac1) 2> dblogin userid ggs_admin  Password:  Successfully logged into database.    GGSCI (jystdrac1 as ggs_admin@demo1) 3> add trandata test.t_baby;  ERROR: No viable tables matched specification.    GGSCI (jystdrac1 as ggs_admin@demo1) 4> add trandata test.t_baby    Logging of supplemental redo data enabled for table TEST.T_BABY.  TRANDATA for scheduling columns has been added on table 'TEST.T_BABY'.  TRANDATA for instantiation CSN has been added on table 'TEST.T_BABY'.

注意上述命令3是因為結尾多寫了";",而OGG並不需要像SQL那樣以";"結尾,所以多寫了";"反而會報錯。

2.3 源端配置extract和datapump進程 源端配置extract和datapump進程:

GGSCI (jystdrac1) 1> edit param extbaby  --Local Extract extbaby  --Author: Alfred Zhao  --  EXTRACT extbaby  SETENV(NLS_LANG=american_america.ZHS16GBK)  SETENV(ORACLE_SID=demo1)  USERID ggs_admin, PASSWORD ggs_admin  TRANLOGOPTIONS ASMUSER sys@ASM,ASMPASSWORD oracle  EXTTRAIL ./dirdat/st  TABLE TEST.T_BABY;      GGSCI (jystdrac1) 2> edit param dpbaby  --Local datapump dpbaby  --Author: Alfred Zhao  --  EXTRACT dpbaby  PASSTHRU  RMTHOST 192.168.1.11, MGRPORT 7809  RMTTRAIL ./dirdat/tt  TABLE TEST.T_BABY;      --添加extbaby(注意這裡RAC2個節點,所以指定threads 2)  GGSCI (jystdrac1) 3> add extract extbaby, tranlog, begin now, threads 2  GGSCI (jystdrac1) 4> add exttrail ./dirdat/st, extract extbaby, megabytes 50    --添加dpbaby  GGSCI (jystdrac1) 5> add extract dpbaby, exttrailsource ./dirdat/st, begin now  GGSCI (jystdrac1) 6> add rmttrail ./dirdat/tt, EXTRACT dpbaby, MEGABYTES 50    --啟動extract和datapump進程  GGSCI (jystdrac1) 7> start *

確認抽取進程正常後,初始化數據做準備,備份當前的t_baby表:

[oracle@jystdrac1 ggs]$ /bin/sh /home/oracle/baby/backup_exp_t_baby.sh    Export: Release 11.2.0.4.0 - Production on Tue Feb 11 17:36:20 2020    Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.      Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production  With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,  Data Mining and Real Application Tes  Export done in ZHS16GBK character set and AL16UTF16 NCHAR character set    About to export specified tables via Conventional Path ...  . . exporting table                         T_BABY        462 rows exported  Export terminated successfully without warnings.

導出文件:/public/backup/t_baby_20200211.dmp

將源端這個導出文件傳輸到目標端,給後續導入使用,我這裡的/public目錄是NAS,源端目標端都可以訪問,所以無需拷貝。

3.目標端配置

3.1 初始化數據,導入目標端資料庫 導入之前確認已創建用戶:test imp test/test file=/public/backup/t_baby_20200211.dmp full=y

[oracle@OEL-ASM dirdat]$ imp test/test file=/public/backup/t_baby_20200211.dmp full=y    Import: Release 11.2.0.3.0 - Production on Tue Feb 11 17:38:09 2020    Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.      Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production  With the Partitioning, Automatic Storage Management, OLAP, Data Mining  and Real Application Testing options    Export file created by EXPORT:V11.02.00 via conventional path  import done in ZHS16GBK character set and AL16UTF16 NCHAR character set  import server uses WE8MSWIN1252 character set (possible charset conversion)  . importing TEST's objects into TEST  . importing TEST's objects into TEST  . . importing table                       "T_BABY"        462 rows imported  Import terminated successfully without warnings.

3.2 目標端配置checkpointtable

view params ./GLOBALS  checkpointtable ggt_admin.chkpt  dblogin userid ggt_admin, password ggt_admin  add checkpointtable ggt_admin.chkpt

3.3 目標端配置replicat進程

edit param repbaby  --Local datapump repbaby  --Author: Alfred Zhao  --  REPLICAT repbaby  SETENV(NLS_LANG=american_america.ZHS16GBK)  SETENV (ORACLE_SID=test)  USERID ggt_admin, PASSWORD ggt_admin  DISCARDFILE ./dirrpt/repbaby.dsc, PURGE  HandleCollisions  AssumeTargetDefs  Map test.*,Target test.*;    --添加repbaby進程  add replicat repbaby, exttrail ./dirdat/tt    --確認初始化數據完成後,開啟repbaby進程  GGSCI (OEL-ASM) 4> start *    Sending START request to MANAGER ...  REPLICAT REPBABY starting      GGSCI (OEL-ASM) 5> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  REPLICAT    RUNNING     REPBABY     00:00:00      00:01:48    GGSCI (OEL-ASM) 6> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  REPLICAT    RUNNING     REPBABY     00:00:00      00:00:00 

4.實驗中遇到的問題處理

4.1 extract進程extbaby啟動不成功,報錯OGG-02091

2020-02-11 16:34:28  ERROR   OGG-02091  Oracle GoldenGate Capture for Oracle, extbaby.prm:  Operation not supported because enable_goldengate_replication is not set to true.  2020-02-11 16:34:28  ERROR   OGG-01668  Oracle GoldenGate Capture for Oracle, extbaby.prm:  PROCESS ABENDING.

這個報錯很明顯,按要求修改這個參數即可:

alter system set enable_goldengate_replication=true scope=both;

4.2 extract進程extbaby啟動不成功,報錯OGG-00446 extbaby啟動不成功,日誌顯示:

2020-02-11 16:36:55  ERROR   OGG-00446  Oracle GoldenGate Capture for Oracle, extbaby.prm:  No valid log files for current redo sequence 859, thread 1, error retrieving redo file name for sequence 859, archived = 0, use_alternate = 0Not able to establish initial position for begin time 2020-02-11 16:33:22.000000.  2020-02-11 16:36:55  ERROR   OGG-01668  Oracle GoldenGate Capture for Oracle, extbaby.prm:  PROCESS ABENDING.

這是因為RAC的redo日誌在ASM中無法訪問到,extbaby配置文件中加入ASM實例的訪問配置,並配置好對應的tnsnames.ora即可:

TRANLOGOPTIONS ASMUSER sys@ASM,ASMPASSWORD oracle

tnsnames.ora添加:

ASM =    (DESCRIPTION =      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.61)(PORT = 1521))      (CONNECT_DATA =        (SERVER = DEDICATED)        (SERVICE_NAME = +ASM)        (SID = +ASM1)      )    )

4.3 extract進程extbaby啟動不成功,依然報錯OGG-00446,但內容有區別 具體表現為啟動後,還是運行一會兒後abended,具體報錯如下:

2020-02-11 16:58:34  ERROR   OGG-00446  Oracle GoldenGate Capture for Oracle, extbaby.prm:  Could not find archived log for sequence 2157 thread 2 under default destinations SQL <SELECT  name    FROM v$archived_log   WHERE sequence# = :ora_seq_no AND         thread# = :ora_thread AND         resetlogs_id = :ora_resetlog_id AND         archived = 'YES' AND         deleted = 'NO'         AND standby_dest = 'NO'         order by name DESC>, error retrieving redo file name for sequence 2157, archived = 1, use_alternate = 0Not able to establish initial position for begin time 2020-02-11 16:33:22.000000.  2020-02-11 16:58:34  ERROR   OGG-01668  Oracle GoldenGate Capture for Oracle, extbaby.prm:  PROCESS ABENDING.

這裡是因為實例2一直處於關閉狀態,且歷史歸檔文件已經不存在:

sys@DEMO> set lines 180  sys@DEMO> select * from v$log;        GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIME          NEXT_CHANGE# NEXT_TIME  ---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ------------------- ------------ -------------------           1          1        859   52428800        512          1 YES INACTIVE              32719197 2020-02-11 07:00:52     32755401 2020-02-11 17:00:53           2          1        860   52428800        512          1 NO  CURRENT               32755401 2020-02-11 17:00:53   2.8147E+14           3          2       2157   52428800        512          2 YES INACTIVE              31139538 2020-01-15 11:31:48     31139543 2020-01-15 11:31:49           4          2       2156   52428800        512          2 YES INACTIVE              31115572 2020-01-15 11:29:39     31139538 2020-01-15 11:31:48    --實例2目前沒有啟動,且對應sequence 2157 thread 2的歸檔日誌已經不存在:    RMAN> list archivelog sequence 2157 thread 2;    using target database control file instead of recovery catalog  specification does not match any archived log in the repository    RMAN> list archivelog sequence 859 thread 1;    List of Archived Log Copies for database with db_unique_name DEMO  =====================================================================    Key     Thrd Seq     S Low Time  ------- ---- ------- - -------------------  262     1    859     A 2020-02-11 07:00:52          Name: +FRA/demo/archivelog/2020_02_11/thread_1_seq_859.421.1032109253      --嘗試臨時啟動實例2    2020-02-11 17:15:25  ERROR   OGG-00446  Oracle GoldenGate Capture for Oracle, extbaby.prm:  Could not find archived log for sequence 2157 thread 2 under default destinations SQL <SELECT  name    FROM v$archived_log   WHERE sequence# = :ora_seq_no AND         thread# = :ora_thread AND         resetlogs_id = :ora_resetlog_id AND         archived = 'YES' AND         deleted = 'NO'         AND standby_dest = 'NO'         order by name DESC>, error retrieving redo file name for sequence 2157, archived = 1, use_alternate = 0Not able to establish initial position for begin time 2020-02-11 16:33:22.000000.  2020-02-11 17:15:25  ERROR   OGG-01668  Oracle GoldenGate Capture for Oracle, extbaby.prm:  PROCESS ABENDING.    --切換日誌後,再啟動ogg進程:  sys@DEMO> alter system archive log current;    System altered.    sys@DEMO> select * from v$log;        GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIME          NEXT_CHANGE# NEXT_TIME  ---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ------------------- ------------ -------------------           1          1        861   52428800        512          1 NO  CURRENT               32759599 2020-02-11 17:17:18   2.8147E+14           2          1        860   52428800        512          1 YES INACTIVE              32755401 2020-02-11 17:00:53     32759599 2020-02-11 17:17:18           3          2       2159   52428800        512          2 NO  CURRENT               32759603 2020-02-11 17:17:18   2.8147E+14           4          2       2158   52428800        512          2 YES INACTIVE              32756440 2020-02-11 17:12:36     32759603 2020-02-11 17:17:18      GGSCI (jystdrac1) 1> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  EXTRACT     RUNNING     DPBABY      00:00:00      00:00:02  EXTRACT     STOPPED     EXTBABY     00:00:00      00:44:42      GGSCI (jystdrac1) 2> start ext*    Sending START request to MANAGER ...  EXTRACT EXTBABY starting      GGSCI (jystdrac1) 3> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  EXTRACT     RUNNING     DPBABY      00:00:00      00:00:00  EXTRACT     RUNNING     EXTBABY     00:00:00      00:44:50    --依然報錯:sequence 2157 thread 2  2020-02-11 17:19:31  ERROR   OGG-00446  Oracle GoldenGate Capture for Oracle, extbaby.prm:  Could not find archived log for sequence 2157 thread 2 under default destinations SQL <SELECT  name    FROM v$archived_log   WHERE sequence# = :ora_seq_no AND         thread# = :ora_thread AND         resetlogs_id = :ora_resetlog_id AND         archived = 'YES' AND         deleted = 'NO'         AND standby_dest = 'NO'         order by name DESC>, error retrieving redo file name for sequence 2157, archived = 1, use_alternate = 0Not able to establish initial position for begin time 2020-02-11 16:33:22.000000.  2020-02-11 17:19:31  ERROR   OGG-01668  Oracle GoldenGate Capture for Oracle, extbaby.prm:  PROCESS ABENDING.

只啟動實例+切換日誌不行?那考慮停止所有進程和MGR,刪除檢查點資訊,重新添加:

[oracle@jystdrac1 ggs]$ cd dirchk/  [oracle@jystdrac1 dirchk]$ ls  DPBABY.cpe  EXTBABY.cpb  EXTBABY.cpe  [oracle@jystdrac1 dirchk]$ rm *  [oracle@jystdrac1 dirchk]$ ls  [oracle@jystdrac1 dirchk]$ pwd  /data/ggs/dirchk  [oracle@jystdrac1 dirchk]$ cd /data/ggs  [oracle@jystdrac1 ggs]$ ./ggsci  Oracle GoldenGate Command Interpreter for Oracle  Version 12.2.0.2.2 OGGCORE_12.2.0.2.0_PLATFORMS_170630.0419_FBO  Linux, x64, 64bit (optimized), Oracle 11g on Jun 30 2017 14:42:26  Operating system character set identified as UTF-8.    Copyright (C) 1995, 2017, Oracle and/or its affiliates. All rights reserved.        GGSCI (jystdrac1) 1> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     STOPPED      GGSCI (jystdrac1) 2> start mgr  Manager started.      GGSCI (jystdrac1) 3> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING      GGSCI (jystdrac1) 4> view param extbaby    --Local Extract extbaby  --Author: Alfred Zhao  --  EXTRACT extbaby  SETENV(NLS_LANG=american_america.ZHS16GBK)  SETENV(ORACLE_SID=demo1)  USERID ggs_admin, PASSWORD ggs_admin  TRANLOGOPTIONS ASMUSER sys@ASM,ASMPASSWORD oracle  EXTTRAIL ./dirdat/st  TABLE TEST.T_BABY;      GGSCI (jystdrac1) 5> view param dpbaby    --Local datapump dpbaby  --Author: Alfred Zhao  --  EXTRACT dpbaby  PASSTHRU  RMTHOST 192.168.1.11, MGRPORT 7809  RMTTRAIL ./dirdat/tt  TABLE TEST.T_BABY;      GGSCI (jystdrac1) 6> add extract extbaby, tranlog, begin now, threads 2  add exttrail ./dirdat/st, extract extbaby, megabytes 50EXTRACT added.      GGSCI (jystdrac1) 7>  EXTTRAIL added.    GGSCI (jystdrac1) 8> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  EXTRACT     STOPPED     EXTBABY     00:00:00      00:00:03      GGSCI (jystdrac1) 9> add extract dpbaby, exttrailsource ./dirdat/st, begin now  add rmttrail ./dirdat/tt, EXTRACT dpbaby, MEGABYTES 50EXTRACT added.      GGSCI (jystdrac1) 10>  RMTTRAIL added.    GGSCI (jystdrac1) 11> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  EXTRACT     STOPPED     DPBABY      00:00:00      00:00:02  EXTRACT     STOPPED     EXTBABY     00:00:00      00:00:10      GGSCI (jystdrac1) 12> start *    Sending START request to MANAGER ...  EXTRACT DPBABY starting    Sending START request to MANAGER ...  EXTRACT EXTBABY starting      GGSCI (jystdrac1) 13> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  EXTRACT     RUNNING     DPBABY      00:00:00      00:00:20  EXTRACT     RUNNING     EXTBABY     00:00:01      00:00:00      GGSCI (jystdrac1) 14> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  EXTRACT     RUNNING     DPBABY      00:00:00      00:00:07  EXTRACT     RUNNING     EXTBABY     00:00:00      00:00:00      GGSCI (jystdrac1) 15> info extbaby    EXTRACT    EXTBABY   Last Started 2020-02-11 17:24   Status RUNNING  Checkpoint Lag       00:00:00 (updated 00:00:06 ago)  Process ID           7702  Log Read Checkpoint  Oracle Redo Logs                       2020-02-11 17:25:08  Thread 1, Seqno 861, RBA 282624                       SCN 0.32760678 (32760678)  Log Read Checkpoint  Oracle Redo Logs                       2020-02-11 17:25:10  Thread 2, Seqno 2159, RBA 260096                       SCN 0.32760681 (32760681)      GGSCI (jystdrac1) 16>

正常不再報錯後,關閉實例2不會影響OGG同步(因為我測試環境節點2有其他測試需要,所以這裡關閉節點2的oracle實例)。

4.4 測試源端DML操作,目標端REPBABY進程abended,報錯OGG-00869、ORA-01841 測試源端DML操作,目標端REPBABY進程abended:

--target - ogg - log:  2020-02-11 17:56:03  INFO    OGG-03522  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  Setting session time zone to source database time zone 'GMT'.  2020-02-11 17:56:05  WARNING OGG-02760  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  ASSUMETARGETDEFS is ignored because trail file ./dirdat/tt000000000 contains table definitions.  2020-02-11 17:56:05  INFO    OGG-03506  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  The source database character set, as determined from the trail file, is zhs16gbk.  2020-02-11 17:56:05  INFO    OGG-06506  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  Wildcard MAP resolved (entry test.*): Map "TEST"."T_BABY",Target test."T_BABY".  2020-02-11 17:56:07  INFO    OGG-02756  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  The definition for table TEST.T_BABY is obtained from the trail file.  2020-02-11 17:56:07  INFO    OGG-06511  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  Using following columns in default map by name: ID, FEED_TIME, LABEL.  2020-02-11 17:56:07  INFO    OGG-06510  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  Using the following key columns for target table TEST.T_BABY: ID.  2020-02-11 17:56:07  INFO    OGG-03010  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  Performing implicit conversion of column data from character set zhs16gbk to we8mswin1252.  2020-02-11 17:56:07  WARNING OGG-00869  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  OCI Error ORA-01841: (full) year must be between -4713 and +9999, and not be 0 (status = 1841), SQL <INSERT INTO "TEST"."T_BABY" ("ID","FEED_TIME","LABEL") VALUES (:a0,:a1,:a2)>.  2020-02-11 17:56:07  WARNING OGG-01004  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  Aborted grouped transaction on 'TEST.T_BABY', Database error 1841 (OCI Error ORA-01841: (full) year must be between -4713 and +9999, and not be 0 (status = 1841), SQL <INSERT INTO "TEST"."T_BABY" ("ID","FEED_TIME","LABEL") VALUES (:a0,:a1,:a2)>).  2020-02-11 17:56:07  WARNING OGG-01003  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  Repositioning to rba 1882 in seqno 0.  2020-02-11 17:56:07  WARNING OGG-01154  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  SQL error 1841 mapping TEST.T_BABY to TEST.T_BABY OCI Error ORA-01841: (full) year must be between -4713 and +9999, and not be 0 (status = 1841), SQL <INSERT INTO "TEST"."T_BABY" ("ID","FEED_TIME","LABEL") VALUES (:a0,:a1,:a2)>.  2020-02-11 17:56:07  ERROR   OGG-01296  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  Error mapping from TEST.T_BABY to TEST.T_BABY.  2020-02-11 17:56:07  ERROR   OGG-01668  Oracle GoldenGate Delivery for Oracle, repbaby.prm:  PROCESS ABENDING.  2020-02-11 17:57:09  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (oracle): info all.

開始嘗試根據字符集設置變數,無效,最終採用修改目標端字符集的方式(這個目標端沒有其他業務,所以可以修改字符集)

--開始嘗試根據字符集設置變數,無效:  --setenv (NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252)    --修改字符集:  alter database character set zhs16gbk;  alter database character set internal_use zhs16gbk;    --修改目標端字符集實際步驟:  shutdown immediate;  startup mount exclusive  alter system enable restricted session;  alter database open;  alter database character set internal_use zhs16gbk;  select userenv('language') from dual;

再次啟動目標端replicat進程repbaby成功,且正常同步:

[oracle@OEL-ASM ggs]$ ./ggsci    Oracle GoldenGate Command Interpreter for Oracle  Version 12.2.0.2.2 OGGCORE_12.2.0.2.0_PLATFORMS_170630.0419_FBO  Linux, x64, 64bit (optimized), Oracle 11g on Jun 30 2017 14:42:26  Operating system character set identified as UTF-8.    Copyright (C) 1995, 2017, Oracle and/or its affiliates. All rights reserved.        GGSCI (OEL-ASM) 1> info all    Program     Status      Group       Lag at Chkpt  Time Since Chkpt    MANAGER     RUNNING  REPLICAT    RUNNING     REPBABY     00:00:00      00:00:02      GGSCI (OEL-ASM) 2> info repbaby    REPLICAT   REPBABY   Last Started 2020-02-12 07:27   Status RUNNING  Checkpoint Lag       00:00:00 (updated 00:00:06 ago)  Process ID           9260  Log Read Checkpoint  File ./dirdat/tt000000000                       2020-02-12 07:12:13.691544  RBA 2664      GGSCI (OEL-ASM) 3> stats rep repbaby    Sending STATS request to REPLICAT REPBABY ...    Start of Statistics at 2020-02-12 07:30:56.    Replicating from TEST.T_BABY to TEST.T_BABY:    *** Total statistics since 2020-02-12 07:27:40 ***          Total inserts                                      4.00          Total updates                                      0.00          Total deletes                                      1.00          Total discards                                     0.00          Total operations                                   5.00    *** Daily statistics since 2020-02-12 07:27:40 ***          Total inserts                                      4.00          Total updates                                      0.00          Total deletes                                      1.00          Total discards                                     0.00          Total operations                                   5.00    *** Hourly statistics since 2020-02-12 07:27:40 ***          Total inserts                                      4.00          Total updates                                      0.00          Total deletes                                      1.00          Total discards                                     0.00          Total operations                                   5.00    *** Latest statistics since 2020-02-12 07:27:40 ***          Total inserts                                      4.00          Total updates                                      0.00          Total deletes                                      1.00          Total discards                                     0.00          Total operations                                   5.00    End of Statistics.      GGSCI (OEL-ASM) 4> 

至此,OGG實驗:數據表通過OGG配置同步已完成。