3節點rac基礎上配置goldengate(單例項)

lovestanford發表於2016-03-01

應公司業務需要,打算另外做一套oracle goldengate作為報表資料庫,目前線上環境有點複雜:

主站:3節點RAC,oracle版本:10.2.0.5.4,OS:linux x86-64

DG:主站基礎上,有個單例項的物理dataguard,oracle版本:10.2.0.5.0,OS:linux x86-64

酒窖庫:在之前主站+DG的基礎上,表級別下游實時捕獲的stream,oracle版本:10.2.0.5.0,OS:linux x86-64

報表庫:在之前主站+DG+stream的配置基礎上,配置oracle goldengate,oracle版本:10.2.0.5.0,OS:linux x86-64(本週四凌晨剛剛部署完成)

需要說明一下:

由於我們的rac 3個節點的歸檔都是放在本地的,在配置gg的時候,需要能夠同時訪問到3個節點上的歸檔日誌,我們這裡採取的方法是:從另外一臺伺服器上以nfs的方式掛載一個磁碟到其中的一個節點,然後goldengate的相關軟體和程式都安裝在這個共享磁碟上,同時在該節點上掛載另外2個節點的歸檔路徑,為了冗餘,可以在另外2個節點做同樣的配置,當其中一個節點不可訪問的時候,可以切換到另外的2個節點進行後續操作,話不多說,以下進入正題(我們的實際情況是在節點3--rac3上配置的,如無特別說明,都是在該節點上操作):

準備階段:

1. nfs配置:

編輯exports檔案,內容如下(另外2個節點也要配置):

/arch/rac3 rac1(rw,async,no_root_squash)
/arch/rac3 rac2(rw,async,no_root_squash)

啟動portmap和nfs服務:

[root@rac3 ~]# service portmap start
[root@rac3 ~]# service nfs start

具體mount命令類似如下(rac3上操作):

 mount -t nfs -o rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,vers=3,timeo=600,actimeo=0 xx.xx.xx.xx:/xxx/xxx /xxx/xxx

同時節點3上有可能會要開啟nfslock服務,我這裡在掛載nfs共享磁碟的時候出現過掛載不上的情況,報錯獲取不到鎖,解決方法就是在rac3上開啟nfslock服務。

掛載另外2個節點的歸檔路徑和共享磁碟:

[root@rac3 ~]# df -h
驛歡緋葷?             瀹歸  宸茬?瀵紼 宸茬? 驊澆綣
/dev/sda1             587G  205G  352G  37% /
/dev/sda3             473G   34G  416G   8% /arch
tmpfs                  12G     0   12G   0% /dev/shm
10.1.8.45:/arch/rac1   95G   56G   34G  63% /arch/rac1    --節點1的歸檔路徑
10.1.8.47:/arch/rac2   99G   57G   37G  61% /arch/rac2    --節點2的歸檔路徑
10.1.8.52:/backup/rac_share_disk/
                      1.4T  469G  799G  37% /share_disk          --共享磁碟(用來安裝goldengate)

以下是共享磁碟所在伺服器的nfs配置:

[root@DBMON ~]# cat /etc/exports
/backup/rac_share_disk 10.1.8.0/24(rw,async,no_root_squash)

同時也要啟動nfs服務,這樣才能保證rac的3個節點都能掛載該磁碟!

2.資料庫:

在源端和目標端建立使用者,用於管理GoldenGate:

省略。。。

賦予相關許可權,包括環境變數的配置,省略,詳見:http://space.itpub.net/25618347/viewspace-719359 中的相關部分!

資料庫方面:

確保源庫開啟歸檔模式:

[oracle@rac3 ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Fri Apr 20 15:56:02 2012

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

SYS@ yesmynet3 >archive log list
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /share_disk/rac3
Oldest online log sequence     16474
Next log sequence to archive   16477
Current log sequence           16477
SYS@ yesmynet3 >

這裡顯示的是歸檔到了共享儲存上,實際上是歸檔到本地的/arch/rac3目錄下的,如下:

SYS@ yesmynet3 >show parameter log_archive_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest                     string
log_archive_dest_1                   string      LOCATION=/arch/rac3 VALID_FOR=
                                                 (ALL_LOGFILES,ALL_ROLES) DB_UN
                                                 IQUE_NAME=yesmynet_rac

這個不重要,沒什麼影響的,忽略!

確保源庫開啟了force logging:


SYS@ yesmynet3 >select force_logging from v$database;

FOR
---
YES

確保源庫開啟supplemental log:

SYS@ yesmynet3 >select SUPPLEMENTAL_LOG_DATA_MIN,SUPPLEMENTAL_LOG_DATA_PK,SUPPLEMENTAL_LOG_DATA_UI from v$database;

SUPPLEME SUP SUP
-------- --- ---
YES      YES YES

確保源庫關閉回收站功能:

官方說明,由於一個已知的問題,回收站會對DDL觸發器產生影響,因此需要關閉。由此可見,我們只需要在源庫中關閉回收站即可。

SYS@ yesmynet3 >show parameter recyclebin

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
recyclebin                           string      OFF

確保goldengate使用者能夠連線到所有的ASM例項:

rac中3個節點都要配置:

TNSNAMES:

YESMYNET_ASM =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = 1515))
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac2-vip)(PORT = 1515))
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac3-vip)(PORT = 1515))
    (LOAD_BALANCE = yes)
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = +ASM)
    )
  )


LISTENER:

SID_LIST_LISTENER_RAC3 =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = yesmynet)
      (ORACLE_HOME = /oracle/product/10.2.0/db_1)
      (SID_NAME = yesmynet3)  --這裡要根據具體的節點來進行調整
    )
    (SID_DESC =
      (GLOBAL_DBNAME = +ASM)
      (ORACLE_HOME = /oracle/product/10.2.0/db_1)
      (SID_NAME = +ASM3)     --這裡要根據具體的節點來進行調整
    )
  )

[oracle@rac3 ~]$ export ORACLE_SID=+ASM3
[oracle@rac3 ~]$ sqlplus as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Fri Apr 20 16:13:54 2012

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.

Enter password:

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

SYS@ yesmynet_asm >show parameter instance

NAME                                 TYPE                   VALUE
------------------------------------ ---------------------- ------------------------------
active_instance_count                integer
cluster_database_instances           integer                3
instance_groups                      string
instance_name                        string                 +ASM3
instance_number                      integer                3
instance_type                        string                 asm
open_links_per_instance              integer                4
parallel_instance_group              string
parallel_server_instances            integer                3

然後重啟監聽:

[oracle@rac3 bin]$ ./crs_stat -v -t
Name           Type           R/RA   F/FT   Target    State     Host       
----------------------------------------------------------------------
ora....SM1.asm application    0/5    0/0    ONLINE    ONLINE    rac1       
ora....C1.lsnr application    0/5    0/0    ONLINE    ONLINE    rac1       
ora.rac1.gsd   application    0/5    0/0    ONLINE    ONLINE    rac1       
ora.rac1.ons   application    0/3    0/0    ONLINE    ONLINE    rac1       
ora.rac1.vip   application    0/0    0/0    ONLINE    ONLINE    rac1       
ora....SM2.asm application    0/5    0/0    ONLINE    ONLINE    rac2       
ora....C2.lsnr application    0/5    0/0    ONLINE    ONLINE    rac2       
ora.rac2.gsd   application    0/5    0/0    ONLINE    ONLINE    rac2       
ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2       
ora.rac2.vip   application    0/0    0/0    ONLINE    ONLINE    rac2       
ora....SM3.asm application    0/5    0/0    ONLINE    ONLINE    rac3       
ora....C3.lsnr application    0/5    0/0    ONLINE    ONLINE    rac3       
ora.rac3.gsd   application    0/5    0/0    ONLINE    ONLINE    rac3       
ora.rac3.ons   application    0/3    0/0    ONLINE    ONLINE    rac3       
ora.rac3.vip   application    0/0    0/0    ONLINE    ONLINE    rac3       
ora....ynet.db application    0/0    0/1    ONLINE    ONLINE    rac1       
ora....t1.inst application    0/5    0/0    ONLINE    ONLINE    rac1       
ora....t2.inst application    0/5    0/0    ONLINE    ONLINE    rac2       
ora....t3.inst application    0/5    0/0    ONLINE    ONLINE    rac3       
[oracle@rac3 bin]$ srvctl stop listener -n rac3
[oracle@rac3 bin]$ srvctl start listener -n rac3

字符集(後面配置goldengate會用到):

[oracle@rac3 ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Fri Apr 20 16:18:38 2012

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

SYS@ yesmynet3 >set line 250
SYS@ yesmynet3 >show parameter nls_lang

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
nls_language                         string      AMERICAN  ---顯示SIMPLIFIED CHINESE 也行
SYS@ yesmynet3 >show parameter nls_terr

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
nls_territory                        string      AMERICA   ---顯示 CHINA也行
SYS@ yesmynet3 >col name for a20
SYS@ yesmynet3 >col value$ for a50
SYS@ yesmynet3 >select name,value$ from PROPS$ WHERE name = 'NLS_CHARACTERSET';

NAME                 VALUE$
-------------------- --------------------------------------------------
NLS_CHARACTERSET     ZHS16GBK

SYS@ yesmynet3 >

準備階段到此結束,下面開始配置goldengate:

1.執行支援ddl複製的相關指令碼,具體如何執行,以及每個指令碼的作用詳見:     ---源庫執行http://space.itpub.net/25618347/viewspace-719359 中的相關部分!

在此不再贅述

2.安裝goldengate產品:

源庫和目標庫都要執行,以下示例是在源庫執行:

[oracle@rac3 ~]$ cd /share_disk/ggs/
[oracle@rac3 ggs]$ pwd
/share_disk/ggs
[oracle@rac3 ggs]$ ./ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 10g on Oct  4 2011 23:50:20

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.

 

GGSCI (rac3) 1> create subdirs

3.建立trail檔案存放位置(源庫和目標庫):

[oracle@rac3 trails]$ ll ../ | grep trails
drwxr-xr-x 2 oracle oinstall      4096 Apr 20 16:14 trails
[oracle@rac3 trails]$ pwd
/share_disk/ggs/trails

注:如果此步不執行的話,trail檔案預設存放在goldengate安裝目錄下的dirdat目錄下~

4.配置manager程式(源庫和目標庫):

GGSCI (rac3) 14> view params mgr                                               

DYNAMICPORTLIST 7840-7914
PORT 6511
PURGEOLDEXTRACTS /share_disk/ggs/trails/s1*, USECHECKPOINTS, MINKEEPFILES 10
AUTORESTART ER *, RETRIES 3, WAITMINUTES 5
PURGEDDLHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30
PURGEMARKERHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30

引數說明:

DYNAMICPORTLIST   ---使用的動態埠範圍
PURGEOLDEXTRACTS   ---當根據checkpoint發現已經完成抽取和複製的trail檔案將被自動刪除,但保留最近10個
AUTORESTART ER  ---使抽取/複製程式失敗後自動重啟
PURGEDDLHISTORY和PURGEMARKERHISTORY分別刪除DDL歷史表和marker表中的過期資料,以控制它們不會變得過於龐大。

全域性引數配置(源):

GGSCI (rac3) 45> view params ./GLOBAL

GGSCHEMA *******

配置源庫的extract程式:

由於主站是3節點的rac,所以在配置抽取程式組的時候,要指定threads 3選項:

GGSCI (rac3) 47> add extract extksr1,tranlog,threads 3,begin now
EXTRACT added.

GGSCI (rac3) 48> add exttrail /share_disk/ggs/trails/s1,extract extksr1, MEGABYTES 100
EXTRACT added.


GGSCI (rac3) 46> view params extksr1

EXTRACT extksr1
setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
USERID ******, PASSWORD ******************
EXTTRAIL /share_disk/ggs/trails/s1
DISCARDFILE extksr1dcf,APPEND,MEGABYTES 10
TRANLOGOPTIONS ALTARCHIVELOGDEST primary instance yesmynet1 /arch/rac1,ALTARCHIVELOGDEST primary instance yesmynet2 /arch/rac2,ALTARCHIVELOGDEST primary instance yesmynet3 /arch/rac3
TRANLOGOPTIONS ALTARCHIVEDLOGFORMAT %t_%s_%r.dbf
TRANLOGOPTIONS ASMUSER ***********
DYNAMICRESOLUTION
DDL INCLUDE MAPPED
DDLOPTIONS ADDTRANDATA,REPORT
FETCHOPTIONS, USESNAPSHOT, NOUSELATESTVERSION, MISSINGROW REPORT
STATOPTIONS REPORTFETCH
WARNLONGTRANS 1H, CHECKINTERVAL 5M
GETTRUNCATES
TABLE mynet_app.*;

引數說明:

1. EXTTRAIL引數指定該抽取程式對應的exttrail
2. DISCARDFILE引數指定一個檔案,用來記錄不能正常處理的記錄,這裡使用追加方式,最大為10MB
3. TRANLOGOPTIONS ALTARCHIVELOGDEST指定源資料庫歸檔所在的路徑。如果不確定,使用該SQL*Plus命令:show parameter log_archive_dest_1
4. TRANLOGOPTIONS ALTARCHIVEDLOGFORMAT指定了歸檔檔案的命名格式,可以透過SQL*Plus命令show parameter log_archive_format 來確定該格式
5. 由於源資料使用了ASM,這裡透過tranlogoptions asmuser來提供登入ASM例項的使用者名稱和密碼(使用者名稱必須是SYS)
6. DDL INCLUDE MAPPED表示只捕獲MAPPED範圍內的DDL操作
7. DDLOPTIONS ADDTRANDATA :當建立新的表時,自動為其啟用追加日誌
8. FETCHOPTIONS:MISSINGROW REPORT表示當extract需要獲取的行在源庫中無法定位時,extract程式繼續執行,相關的錯誤資訊會儲存在discardfile引數指定的檔案中;USESNAPSHOT表示extract使用flashback查詢來從undo從獲取一些資料,比如無法從redo中直接獲取的UDT、巢狀表、XMLtype以及9i中的LOB;NOUSELATESTVERSION使得extract當無法從undo中獲取資料時,忽略該條件而不是從源表中獲取當前值。
9. STATOPTIONS REPORTFETCH:使用ggsci命令stats時,顯示獲取的行的統計資訊
10. WARNLONGTRANS 1H, CHECKINTERVAL 5M:當發現超過1個小時的長事務時,會在錯誤日誌中產生一條warning,5分鐘檢測一次

需要強調一點的是,上面程式碼部分標註為紅色的就是與我之前準備階段裡檢視的字符集相一致的,否則,匯入到目標庫後,有可能出現亂碼!

配置源庫的pump程式:

GGSCI (rac3)>ADD EXTRACT dpksr1, EXTTRAILSOURCE /share_disk/ggs/trails/s1, BEGIN now

EXTRACT added

GGSCI (rac3)>add rmttrail /home/oracle/ggs/trails/t1,extract dpksr1, megabytes 100

RMTTRAIL added.

GGSCI (rac3) 47> view params dpksr1

EXTRACT dpksr1
setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
USERID *****, PASSWORD ************************
RMTHOST 10.1.8.56, MGRPORT 6511
RMTTRAIL /home/oracle/ggs/trails/t1
DISCARDFILE dpksr1dcf,APPEND,MEGABYTES 10
GETTRUNCATES
table mynet_app.*;

引數比較簡單,就不一一說明了

目標端配置全域性引數:

建立一個checkpoint表
replicat透過這個表來維護trail檔案中的read position。這不是個必須的操作,如果沒有這個表,則透過一個磁碟檔案來維護

GGSCI (rptdb) 24> dblogin userid *****,password ********
Successfully logged into database.

GGSCI (rptdb) 24> add checkpointtable ****.chkpoint

GGSCI (rptdb) 25> view params ./GLOBAL

GGSCHEMA *****
CHECKPOINTTABLE *****.chkpoint

配置replicate程式:

GGSCI (rptdb) 25>add replicat repksr1,exttrail /home/oracle/ggs/trails/t1,checkpointtable *****.chkpoint

REPLICAT added.

GGSCI (rptdb) 26> view params repksr1

REPLICAT repksr1
setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
ASSUMETARGETDEFS
USERID ******, PASSWORD *******************
DISCARDFILE repksr1dcf,APPEND,MEGABYTES 10
DDL INCLUDE MAPPED
DDLOPTIONS REPORT
BATCHSQL
DBOPTIONS SUPPRESSTRIGGERS
DBOPTIONS DEFERREFCONST
DBOPTIONS LOBWRITESIZE 102400
--HANDLECOLLISIONS
DDLERROR DEFAULT DISCARD RETRYOP MAXRETRIES 5 RETRYDELAY 20
APPLYNOOPUPDATES
GETTRUNCATES
MAP mynet_app.*, TARGET mynet_app.*;

引數說明:

1. ASSUMETARGETDEFS:由於在這裡我們源端和目標端的表結構是完全一致的,因此使用這個引數來使replicat不用去檢視相關的定義檔案,從而提高效率
2. DDLOPTIONS REPORT:將ddl的具體資訊寫入到報告檔案中
3. BATCHSQL:將相似的SQL語句放到一個陣列中以加快執行速度。在normal模式下,repliat同一時間只應用一條sql語句。
4. DBOPTIONS DEFERREFCONST:將完整性約束推遲到replicat事務提交以後再檢測
5. 如果資料庫版本在10.2.0.5或11.2.0.2以後,可以使用DBOPTIONS SUPPRESSTRIGGERS在replicat會話中禁用觸發器。如果不是,應該在目標端資料庫中禁用觸發器(觸發器產生的DML操作會從源端同步到目標端)
6. DBOPTIONS LOBWRITESIZE :將要寫入目標庫的LOB資料快取在記憶體中,當達到引數中指定的大小時寫入資料,以減少I/O。這個值的範圍是2KB到1MB,預設為32KB
7. DDLERROR DEFAULT DISCARD RETRYOP MAXRETRIES 5 RETRYDELAY 20:當出現DDL錯誤,重試5次,時間間隔為20秒。如果失敗,replicat會繼續執行,但相關資訊會記錄在discardfile中。
8. HANDLECOLLISIONS:當replicat往表中插入一條記錄,而該記錄已經存在,則進行覆蓋;當replicat在表中試圖更新或刪除一條記錄,而該記錄不存在,則該操作被丟棄。這個引數一般在initial-data load中使用,在源和目標端的資料同步之後應該將該引數刪除
9. MAP TARGET:源表和目標表之間的對映,可以使用萬用字元
10.DBOPTIONS SUPPRESSTRIGGERS 在目標庫禁用trigger

配置goldengate結束,下面開始資料的同步操作:

GGSCI (rac3) 48> add trandata mynet_app.*   ---源庫操作(啟用追加日誌)

輸出太多,省略

之後開始資料的初始化匯入:

方法跟之前測試庫一樣,impdp方式,至於有哪些方法,都有什麼區別,詳見:

http://space.itpub.net/25618347/viewspace-719359 中的相關部分

初始化匯入之前,在源庫啟用mgr、ext和pump程式:

GGSCI (rac3) 48> info all                

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     RUNNING     DPKSR1      00:00:00      00:00:06   
EXTRACT     RUNNING     EXTKSR1     00:00:00      00:00:01 

目標庫啟用mgr程式:

GGSCI (rptdb) 28> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING 

源庫查詢當前scn值並記錄下來:

SYS@ yesmynet3 >col current_scn for 999999999999999999999
SYS@ yesmynet3 >select current_scn from v$database;

           CURRENT_SCN
----------------------
           77318008898

SYS@ yesmynet3 >

執行匯入操作:

impdp ogg directory = DPDATA1 network_link = yesmynet schemas=mynet_app flashback_scn=77318008898 TABLE_EXISTS_ACTION =replace

。。。漫長的等待。。。

匯入完畢後,目標庫啟用replicat程式:

GGSCI (rptdb) 28> start repksr1,aftercsn 77318008898

GGSCI (rptdb) 28> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
REPLICAT    RUNNING     REPKSR1     00:00:00      00:00:00 

等待資料同步完成:

目標庫errlog如下:

2012-04-19 04:23:30  INFO    OGG-01738  Oracle GoldenGate Capture for Oracle, extksr1.prm:  BOUNDED RECOVERY: CHECKPOINT: for object pool 3: p20517_Redo Thread 3: start=SeqNo: 16378, RBA: 12319760, SCN: 17.4265175431 (77279619463), Timestamp: 2012-04-19 04:16:49.000000, end=SeqNo: 16379, RBA: 51712, SCN: 17.4265432195 (77279876227), Timestamp: 2012-04-19 04:23:15.000000.
2012-04-19 04:23:30  INFO    OGG-01738  Oracle GoldenGate Capture for Oracle, extksr1.prm:  BOUNDED RECOVERY: CHECKPOINT: for object pool 1: p20517_Redo Thread 1: start=SeqNo: 29172, RBA: 12503568, SCN: 17.4265432207 (77279876239), Timestamp: 2012-04-19 04:23:19.000000, end=SeqNo: 29172, RBA: 22286336, SCN: 17.4265442036 (77279886068), Timestamp: 2012-04-19 04:23:24.000000.
2012-04-19 04:23:30  INFO    OGG-01738  Oracle GoldenGate Capture for Oracle, extksr1.prm:  BOUNDED RECOVERY: CHECKPOINT: for object pool 2: p20517_Redo Thread 2: start=SeqNo: 27652, RBA: 3600, SCN: 17.4265442049 (77279886081), Timestamp: 2012-04-19 04:23:25.000000, end=SeqNo: 27652, RBA: 12288, SCN: 17.4265442063 (77279886095), Timestamp: 2012-04-19 04:23:25.000000.
2012-04-19 04:25:25  INFO    OGG-00538  Oracle GoldenGate Capture for Oracle, extksr1.prm:  Metadata not invalidated for [MYNET_APP.M_GOODS_STOCK2] because of TRUNCATE.
2012-04-19 04:25:25  INFO    OGG-01487  Oracle GoldenGate Capture for Oracle, extksr1.prm:  DDL found, operation [truncate table m_goods_stock2  (size 30)], start SCN [77279876241], commit SCN [77279876395] instance [yesmynet1 (1)], DDL seqno [1029], marker seqno [1029].
2012-04-19 04:25:25  INFO    OGG-00487  Oracle GoldenGate Capture for Oracle, extksr1.prm:  DDL operation included [INCLUDE MAPPED], optype [TRUNCATE], objtype [TABLE], objowner [MYNET_APP], objname [M_GOODS_STOCK2].
2012-04-19 04:25:25  INFO    OGG-00497  Oracle GoldenGate Capture for Oracle, extksr1.prm:  Writing DDL operation to extract trail file.
2012-04-19 04:25:26  INFO    OGG-01026  Oracle GoldenGate Capture for Oracle, extksr1.prm:  Rolling over remote file /share_disk/ggs/trails/s1000004.
2012-04-19 04:29:08  INFO    OGG-00538  Oracle GoldenGate Capture for Oracle, extksr1.prm:  Metadata not invalidated for [MYNET_APP.M_GOODS_STOCK2] because of TRUNCATE.
2012-04-19 04:29:08  INFO    OGG-01487  Oracle GoldenGate Capture for Oracle, extksr1.prm:  DDL found, operation [truncate table m_goods_stock2  (size 30)], start SCN [77279894528], commit SCN [77279894688] instance [yesmynet1 (1)], DDL seqno [1030], marker seqno [1030].

待資料同步完成之後,在目標庫關閉handlecollisions引數: 先使用SEND REPLICAT命令使之對執行中的replicat生效,然後修改引數檔案,使其在下一次啟動時生效。

GGSCI (rptdb) 28> SEND REPLICAT repksr1, NOHANDLECOLLISIONS

然後修改replicat程式,去掉HANDLECOLLISIONS引數

測試:

可以試著在源資料庫中進行一些ddl或dml操作,在目標端使用ggsci命令stats或在資料庫中檢視更改是否被應用了,

我這裡測試下來,dml和ddl操作都沒什麼問題,就此略過~

觀察一段時間,資料同步沒什麼問題的話,估計下週會正式上線,終於寫完了,累死了~~



 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21754115/viewspace-2018528/,如需轉載,請註明出處,否則將追究法律責任。

相關文章