程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> OGG_Oracle GoldenGate三步驟Extract / Dump / Relicat(案例),goldengaterelicat

OGG_Oracle GoldenGate三步驟Extract / Dump / Relicat(案例),goldengaterelicat

編輯:Oracle教程

OGG_Oracle GoldenGate三步驟Extract / Dump / Relicat(案例),goldengaterelicat


2014-12-24 Created By 鮑新建

一、摘要


1.OGG是數據同步軟件,或者說是邏輯復制軟件,其競爭對手有IBM CDC,DELL shareplex,DSG,DDS等等。

2.OGG軟件是需要安裝在操作系統上的,Oracle DB軟件沒有自帶OGG軟件(至少目前是這樣的)

3.OGG軟件有三大進程(說四大進程也行):

三大進程:源頭抽取進程、源頭傳輸進程、目的端應用進程(即:復制進程)

四大進程:源頭抽取進程、源頭傳輸進程、目的端server進程(負責在目的端寫入trail文件)、目的端應用進程(即:復制進程)

4.OGG軟件有兩種trail file

源頭的trail file:由源頭抽取進程寫入。

目的端的trail file: 源頭傳輸進程傳輸到目的端,由目的端的server 進程寫入目的端操作系統的指定路徑下。

5.OGG軟件中三大進程都有自己的checkpoint(即:檢查點,用來記錄每種進程讀取到什麼位置了,寫入到什麼位置了)

源頭抽取進程:有讀取檢查點 和寫入檢查點

源頭傳輸進程:有讀取檢查點 和寫入檢查點

目的端應用進程:有讀取檢查點

6.OGG軟件三大進程處理trail file的過程:

源頭抽取進程:讀取oracle redo log(假設源頭數據庫是oracle),結合抽取進程的參數文件,將redo log中的內容變為OGG自有格式的文件(即trail file),並寫入到源頭操作系統的指定路徑下

源頭傳輸進程:讀取“源頭抽取進程寫入的trail file”,結合傳輸進程的參數文件,發送需要同步的數據到目的端,在目的端是由server 進程負責寫入。

目的端應用進程:讀取目的端操作系統的指定路徑下的trail file,結合應用進程的參數文件,形成sql語句,在目的端db上執行這些sql語句。

 

二、Extract Process


創建Extract Process

Step1. 添加extract程序

GGSCI (gavinprod.com) 51> add extract ext2, tranlog, begin now
EXTRACT added.

Step2. 定義extract目錄

GGSCI (gavinprod.com) 52> add exttrail /opt/oracle/ggate/dirdat/ld, extract ext2
EXTTRAIL added.

Step3. 定義extract參數

edit params ext1

GGSCI (gavinprod.com) 19> edit params EXT2
extract ext2
userid ggate@gavinprod, password oracle
exttrail /opt/oracle/ggate/dirdat/ld
ddl include mapped objname source_prod.*;
table source_prod.*;

 

三、Dump Process


創建Dump Process

Step1. 添加dump程序

GGSCI (gavinprod.com) 60> add extract dmp2,exttrailsource /opt/oracle/ggate/dirdat/ld
EXTRACT added.

Step2. 定義dump目錄

GGSCI (gavinprod.com) 62> add rmttrail /opt/oracle/ggate/dirdat/ld, extract dmp2
RMTTRAIL added.

Step3. 定義dump參數

GGSCI (gavinprod.com) 71> view params DMP2

extract dmp2
userid ggate@gavinprod, password oracle
rmthost odellprod.com, mgrport 7809
rmttrail /opt/oracle/ggate/dirdat/lt
passthru
table source_prod.*;

 

四、Replicat Process


創建Replicat Process

Step1. 添加replicat程序

GGSCI (odellprod.com) 8> add replicat rep2, exttrail /opt/oracle/ggate/dirdat/ld, checkpointtable ggate.checkpoint
REPLICAT added.

Step2. 定義replicat參數

GGSCI (odellprod.com) 11> view params REP2

replicat rep2
ASSUMETARGETDEFS
userid ggate@odellprod,password oracle
discardfile /opt/oracle/ggate/dirdat/rep2_discard.txt, append, megabytes 10
map source_prod.*, target target_prod.*;

 

五、測試


1. 在源數據端,創建測試數據

CREATE TABLE source_prod.bxj_test_ogg_dump
(
   test_date          DATE,
   test_description   VARCHAR2 (100)
);

INSERT INTO source_prod.bxj_test_ogg_dump VALUES (sysdate,'test goldendate data transfer by extract/dump/replicat');

2. Source Database,進程和文件

GGSCI (gavinprod.com) 17> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                           
EXTRACT     RUNNING     DMP2        00:00:00      00:00:07    
EXTRACT     RUNNING     EXT1        00:00:00      00:00:08    
EXTRACT     RUNNING     EXT2        00:00:00      00:00:06

2. Target Database,進程和文件 

GGSCI (odellprod.com) 6> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                           
REPLICAT    RUNNING     REP1        00:00:00      00:00:03    
REPLICAT    RUNNING     REP2        00:00:00      00:00:03  

3. Checkpoint表

 

參考:shined - http://www.cnblogs.com/shined/archive/2012/07/12/2587648.html

參考:msdnchina - http://blog.csdn.net/msdnchina/article/details/38347285

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved