Oracle GoldenGate常用配置端口


1 簡介

Oracle Golden Gate軟件是一種基於日志的結構化數據復制備份軟件,它通過解析源數據庫在線日志或歸檔日志獲得數據的增量變化,再將這些變化應用到目標數據庫,從而實現源數據庫與目標數據庫同步。Oracle Golden Gate可以在異構的IT基礎結構(包括幾乎所有常用操作系統平台和數據庫平台)之間實現大量數據亞秒一級的實時復制,從而在可以在應急系統、在線報表、實時數據倉庫供應、交易跟蹤、數據同步、集中/分發、容災、數據庫升級和移植、雙業務中心等多個場景下應用。同時,Oracle Golden Gate可以實現一對一、廣播(一對多)、聚合(多對一)、雙向、點對點、級聯等多種靈活的拓撲結構

GoldenGate安裝

2.1 GoldenGate的獲取

Oracle GoldenGate(下文簡稱ogg)軟件可以通過ORACLE官方網站進行下載,根據ORACLE的版本及操作系統來下載對應版本的ogg,官方下載地址:

http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html

2.2 GoldenGate的安裝

ogg安裝非常簡單,但需在源數據庫和目標數據庫服務器上均安裝ogg軟件即可,具體請參考以下步驟:

1、 將壓縮包解壓到系統目錄/oracle/ogg (該路徑可以根據需要自行選擇)

2、 進入/oracle/ogg目錄,運行./ggsci,進入ogg管理控制台

3、 在ogg控制台輸入命令: create subdirs ,讓ogg創建其需要用到的目錄

4、 手工在ogg目錄下創建discard文件夾,mkdir  discard

5、 配置操作系統環境變量(請確保環境變量配置了ORACLE_HOME和ORACLE_SID)

export LD_LIBRARY_PATH=/oradata/ogg:$ORACLE_HOME/lib:$LD_LIBRARY_PATH

6、 在ORACLE中創建ogg專屬用戶

[oracle@local ~]$ sqlplus /nolog

SQL> conn / as sysdba

SQL> create user ogg identified by ogg;  (注:賬號密碼根據實際情況設置)

SQL> grant connect,resource to ogg;

SQL> grant unlimited tablespace to ogg;

SQL> grant execute on utl_file to ogg;

7、 為新創建的ogg用戶執行配置腳本

ogg的安裝目錄下登陸sqlplus,使用sys登陸sqlplus,然后執行如下配置

[oracle@local ~]$ sqlplus /nolog

SQL> conn / as sysdba

SQL> @marker_setup.sql

SQL> @ddl_setup.sql;

SQL> @role_setup.sql;

SQL> grant GGS_GGSUSER_ROLE to ogg;

SQL> @ddl_enable.sql;

進入ogg控制台,測試用戶是否創建成功

GGSCI (local) 1> dblogin userid ogg

Password: ogg

Successfully logged into database.

       通過上述步驟,ogg就安裝成功了。

3 單項復制的配置

為了能讓ogg成功的將源數據庫及目標數據庫進行同步,下面還需要對ogg及oracle進行一系列配置(ogg支持多種復制方式,比如單項復制、雙向復制等等,因實際需要,本文僅介紹單項復制相關配置)。

首先說說ogg的一些概念:

1、 Manager:ogg所有服務必須依賴Manager,Manger如同ogg的總調度。

2、  Extract :ogg用來獲取源數據庫數據更新的,將變更的數據發送到目標數據庫

3、 Replicat :ogg用來接收源數據庫的更新,一旦源數據庫Extract將數據發送過來后,Replicat會自動將更新腳本同步到目標數據庫。

3.1 源服務器配置

1、開啟ORACLE歸檔模式,設置日志模式

[oracle@local ~]$ sqlplus /nolog

SQL> conn / as sysdba

SQL> shutdown immediate;

SQL> startup mount;

SQL> alter database archivelog;

SQL> alter database force logging;

SQL> alter database add supplemental log data;

SQL> alter database open;

2、 回收站功能會影響同步,需要關閉回收站

SQL>alter session set recyclebin=off;

SQL>alter system set recyclebin=off;

3、配置環境變量NLS_LANG(不配置中文同步會亂碼)

首先在oracle中查詢select userenv( 'language') from dual;

然后將查詢的結果配置到linux環境變量中

export NLS_LANG=” SIMPLIFIED CHINESE_CHINA.ZHS16GBK”

4、登陸ogg控制台,設置需要進行同步的oracle表

GGSCI (local) 1> dblogin userid ogg

GGSCI (local) 1> add trandata dbuser.*

5、配置ogg manager&啟動manager(配置界面操作類似vi)

GGSCI (local) 1> edit param mgr

PORT 7809

GGSCI (local) 1> info all(查看當前mgr狀態)

GGSCI (local) 1> start manager(啟動manager,啟動完后可以用info all再次查看狀態)

6、 添加一個ogg extract進程,用於抽取源服務器數據

GGSCI (local) 1> add extract ext4,tranlog,begin now (增加一個抽取進程ext4,ext4名字可以根據需要修改)

GGSCI (local) 1> add exttrail /oracle/ogg/dirdat/wf,extract ext4 (將ext4抽取的源數據變更數據寫到該文件夾)

GGSCI (local) 1> edit params ext4 (修改ext4的配置參數)

extract ext4

userid ogg,password ogg

rmthost xxxx.xxx.xxx.xxx,mgrport 7809 --目標服務器ip

rmttrail /oracle/ogg/dirdat/wf         --目標服務器文件夾

ddl include mapped objname dbuser.*;

table dbuser.*;

配置完成后可以通過info all查看到新添加的extract的狀態

7、啟動ogg extract命令

GGSCI (local) 1> start extract ext4 (等目標服務器ogg配置成功后再啟動ext)

3.2 目標服務器配置

1、登陸ogg控制台

GGSCI (local) 1> dblogin userid ogg

2、配置ogg manager&啟動manager(配置界面操作類似vi)

GGSCI (local) 1> edit param mgr

PORT 7809

DYNAMICPORTLIST 7840-7850  --遠程隊列端口范圍

GGSCI (local) 1> info all(查看當前mgr狀態)

3、 添加一個ogg replicat進程,用於更新目標服務器數據

GGSCI (local) 1> edit params ./GLOBAL

GSSCHEMA ogg

CHECKPOINTTABLE ogg.checkpoint

GGSCI (local) 2> dblogin userid ogg

Password: ogg

Successfully logged into database.

GGSCI (local) 3> add checkpointtable ogg.checkpoint

Successfully created checkpoint table ogg.CHECKPOINT.

GGSCI (local) 4> ADD replicat rep2 EXTTRAIL /hom/wangfan/ggs/dirdat/wf, checkpointtable ogg.checkpoint

GGSCI (local) 5> edit param rep2

--Replicat group --

replicat rep2

--source and target definitions

ASSUMETARGETDEFS

--target database login --

userid ogg, password ogg

--file for dicarded transaction --

discardfile /oracle/ogg/discard/rep2_discard.txt, append, megabytes 10

--ddl support DDL

DDL INCLUDE MAPPED

DDLERROR DEFAULT IGNORE RETRYOP

--Specify table mapping ---

map dbuser.*, target dbuser.*;

配置完成后可以通過info all查看到新添加的extract的狀態

4、啟動ogg manager & replicat命令

GGSCI (local) 1> start manager

GGSCI (local) 1> start replicat rep2

         最后參考源服務器配置,啟動ext4

4 維護相關

4.1 OGG常用命令

1、  啟動manager:start manager

2、  啟動extract:start extract extn

3、  啟動replicat:start replicat repn

4、  停止manager:stop manager

5、  停止 extract:stop extract extn

6、  停止replicat:stop replicat repn

7、  刪除extract:delete extract extn

8、  刪除replicat:delete extract repn

9、  查看ogg狀態:info all

10、 修改manager參數:edit params mgr

11、 修改extract參數:edit params extn

12、 修改replicat參數:edit params repn

13、 修改全局參數:edit params ./GLOBAL

4.2 OGG日志路徑

$OGG_HOME/ggserr.log

4.3 OGG開機自啟

操作系統設置:

       1、用oracle用戶建立/oracle/ogg/autostart/info.txt,文件內容如下:

     sh dat

     start mgr

       2、chmod x info.txt

       3、用oracle用戶建立/oracle/ogg/autostart/startmgr.sh,文件內如下:

          /oracle/ogg/ggsci paramfile /oracle/ogg/autostart/info.txt >> /oracle/ogg/autostart/log.txt

       4、chmod x startmgr.sh

       5、用root用戶編輯 /etc/rc.local ,添加如下信息:

       su - oracle -c "/oracle/ogg/autostart/startmgr.sh"

OGG設置:

ogg中主進程是manager進程,使用startmgr啟動。可以在mgr進程中添加一些參數用來在啟動mgr進程的同時啟動extract和replicat進程。

     1、以下是extract端的mgr參數配置

  GGSCI (gg01) 130> edit params mgr

  PORT 7809

  DYNAMICPORTLIST 7800-7909

  --啟動mgr進程啟動啟動extract進程

  AUTOSTART EXTRACT *

  --extract異常終止時會自動啟動,每5分鍾嘗試重新啟動所有的extract進程,一共嘗試3次,5分鍾清零

  AUTORESTART EXTRACT *,RETRIES 3, WAITMINUTES 5, RESETMINUTES 10

 

    2、配置目標端replicat進程自啟動,在mgr參數中添加如下

 GGSCI (gg02) 140> edit params mgr

 PORT 7809

 --動態端口,當指定端口不可用時,會從以下列表中選擇一個可用端口

 DYNAMICPORTLIST 7800-7909

 --自動啟動replicat進程

 AUTOSTART REPLICAT *

 --當replicat進程異常終止時會自動啟動,每5分鍾嘗試重新啟動所有的replicat進程,一共嘗試5次

 AUTORESTART REPLICAT *, WAITMINUTES 2, RETRIES 5

 --mgr每隔1小時檢查extract延時情況,超5分鍾作為信息記錄log中,超過7分鍾作為警告記錄log中

 LAGREPORTHOURS 1

 LAGINFOMINUTES 5

 LAGCRITICALMINUTES 7

 --刪除10天前的trail文件

 PURGEOLDEXTRACTS /oracle/ogg/dirdat/*, USECHECKPOINTS, MINKEEPDAYS 10


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM