1、安裝GoldenGate
每個GoldenGate實例可支持5000個Extract和Replicat進程
每個Extract和Replicat需要25-50M或更多的內存,這取決於系統的事物量和事物大小
GoldenGate實際使用的物理內存由操作系統控制和管理,GoladenGate 緩存管理器利用操作系統內存管理功能的優勢,確保GoladenGate進程持續和有效的工作
1.1Manager
Manager進程必須在源端和目標端運行,並且在Extract和Replicat進程之前啟動,沒有該進程OGG無法做其它的操作,它管理啟動Oracle GoldenGate進程、啟動動態進程、分配端口給GoldenGate進程、管理trail file、創建事件,錯誤和診斷報告工作;
1.2 Extract
Extract 運行在源端或者根據系統和業務的需求可以同時運行在兩端,抽取捕獲系變更統數據;它可以配置為初始化數據加載(直接從數據源中加載靜態的數據)和在某個時間點后源端與服務端變更數據同步(從在線日志或歸檔日志抽取捕獲變更的數據),它也可以在支持DDL變更的系統中抽取捕獲DDL;
當配置為數據同步時,extract進程抽取捕獲extract配置文件里配置的對象的任何DML和DDL(需要額外配置)的操作,extract進程記錄這些操作,直到用戶提交或回滾事務;當收到回滾(rollback)時,extract撤銷這些記錄;當收到(commit)操作后,extract進程記錄保存這些操作到一個或多個trail文件里並以隊列的形式發送到目標端,以確保數據傳輸速度和數據的一致性。
1.3.Data Pumps
Data Pumps是第二種類型的GoldenGate extract配置,如果不使用Data Pump,extract進程必須發送抽取捕獲的操作數據到目標端trail;如果配置了Data Pump,extract進程抽取捕獲數據寫入到trail,Data pump讀取trail並且通過網絡發送trail到目標端trail,data pump 加強了源端和目標端抽取捕獲數據的可用性,主要優點:1.保護網絡傳輸失敗和目標端失敗;2.可以實現復雜的數據過濾和轉換;3.可以結合多個數據源到目標端;4.可以同步一個源數據到多個目標端。
1.4.Replicats
Replicat進程運行在目標端讀取tail文件和重構DML、DDL並應用到目標數據庫;Replicat編譯SQL一次,當變量值不同時重復使用編譯過的SQL;Replicat進程可以像extract進程配置初始化數據加載(直接從數據源中加載靜態的數據)和在某個時間點后源端與服務端變更數據同步(從在線日志或歸檔日志抽取捕獲變更的數據);
1.5.Trails
trail文件保存抽取捕獲的變更數據信息,trail根據GoldenGate配置可能存在於源系統的磁盤上或者目標系統的磁盤上或者系統內部介質或者相關的系統中;使用trail文件存儲抽取捕獲的數據可以不依賴於extract或replicat進程,你可以有更多的選擇處理數據和何時到達目標端,比如你可能配置抽取和保存在同一時刻,然后稍后發送數據到目標端。 trail文件可以在進程需要時使用ADD RMTTRAIL or ADD EXTTRAIL命令添加創建,文件名為8個字符,可以在創建時指定兩個字符然后由GoldenGate填充另外六個序列字符,序列字符從000000到999999,比如創建時指定了兩個字符為'tr',那么GoldenGate會創建tr000001的文件保存抽取捕獲的數據;文件名是唯一的,保存在GoldenGate_home\dirdat目錄下。
1.6 Checkpoints
Checkpoint存儲從文件讀取和寫入的檢測點位置,用於還原和恢復數據,Checkpoint確保發生變化並提交(commit)的數據被extract抽取捕獲和被replicat進程應用到目標端;保證在系統、網絡或者GoldenGate需要重啟進程時的發生錯誤不會導致數據丟失;在復雜的同步配置中checkpoints啟用多個extract和replicat進程從同一個trail集中讀取數據。
1.7 Collector
collector是目標端后台進程,默認情況下,源端extract進程初始化TCP/IP連接到目標端的collector進程,但是因為GoldenGate是可配置的,所以有些時候可能需要在目標端配置和初始化collector,比如目標端同步時區,但是源端的時區小於目標端的情況下。collector的功能:1.根據源端extract進程的請求,掃描和綁定可用的端口給mgr主進程分配給請求的extract進程;2.接收源端extract抽取trail並寫入到目標端的trail文件;mgr自動啟動collector進程當源端發出網絡請求時,所以GoldeGate用戶是不可以與它交互的。collector只能同時接受一個extract進程信息(一對一)並且隨着extract的終止而終止。
1.8 GoldenGate的安裝
源端oracle數據庫
a) 創建源端(目標端)安裝目錄:
mkdir /opt/oracle/oracle/product/ogg_src
mkdir /opt/oracle/oracle/product/ogg_trg
b) cd ~ 進入用戶根目錄修改.bash_profile配置文件內容:
Linux下安裝GoldenGate要配置ORACLE_SID、ORACLE_HOME和LD_LIBRARY_PATH;
PATH=$PATH:$HOME/bin
export PATH
export ORACLE_BASE=/opt/oracle/
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
注意:數操作系統版本、據庫版本和Oracle GoldenGate版本bit type要一致,要么全是32bit要么全是64bit;
c) 解壓安裝文件到tmp目錄 unzip 122022_fbo_ggs_Linux_x64_shiphome.zip -d /tmp
d) 執行命令,圖形界面安裝
export 10.00.00.00:0.0 --替換成自己機器IP
xhost +
e) 執行安裝命令 /tmp/fbo_ggs_Linux_x64_shiphome/Disk1/runInstaller
f) 根據數據庫版本選擇對應的GoldenGate選項;
g) 選擇安裝目錄 (源和目標目錄不一樣;如果源和目標在同一台機器,端口號要區分一下)
h) Install安裝即可
I) 安裝完成后配置OGG命令行快捷命令和回寫功能,在.bash_profile配置文件中添加如下內容:
alias tggsci='rlwrap /u01/app/product/ogg_trg/ggsci'
alias sggsci='rlwrap /u01/app/product/ogg_src/ggsci'
源端、目標端安裝方式一樣。如果安裝在同一台機器注意安裝路徑和端口要區分。