Oracle GoldenGate經常使用配置端口

1 簡介

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

GoldenGate安裝

2.1 GoldenGate的獲取

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

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

2.2 GoldenGate的安裝

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

一、 將壓縮包解壓到系統目錄/oracle/ogg (該路徑能夠根據須要自行選擇)服務器

二、 進入/oracle/ogg目錄,運行./ggsci,進入ogg管理控制檯session

三、 在ogg控制檯輸入命令: create subdirs ,讓ogg建立其須要用到的目錄oracle

四、 手工在ogg目錄下建立discard文件夾,mkdir  discardapp

五、 配置操做系統環境變量(請確保環境變量配置了ORACLE_HOME和ORACLE_SID)ide

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

六、 在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;

七、 爲新建立的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的一些概念:

一、 Manager:ogg全部服務必須依賴Manager,Manger如同ogg的總調度。

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

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

3.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;

二、 回收站功能會影響同步,須要關閉回收站

SQL>alter session set recyclebin=off;

SQL>alter system set recyclebin=off;

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

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

而後將查詢的結果配置到linux環境變量中

export NLS_LANG=」 SIMPLIFIED CHINESE_CHINA.ZHS16GBK」

四、登錄ogg控制檯,設置須要進行同步的oracle表

GGSCI (local) 1> dblogin userid ogg

GGSCI (local) 1> add trandata dbuser.*

五、配置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再次查看狀態)

六、 添加一個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的狀態

七、啓動ogg extract命令

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

3.2 目標服務器配置

一、登錄ogg控制檯

GGSCI (local) 1> dblogin userid ogg

二、配置ogg manager&啓動manager(配置界面操做相似vi)

GGSCI (local) 1> edit param mgr

PORT 7809

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

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

三、 添加一個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的狀態

四、啓動ogg manager & replicat命令

GGSCI (local) 1> start manager

GGSCI (local) 1> start replicat rep2

         最後參考源服務器配置,啓動ext4

4 維護相關

4.1 OGG經常使用命令

一、  啓動manager:start manager

二、  啓動extract:start extract extn

三、  啓動replicat:start replicat repn

四、  中止manager:stop manager

五、  中止 extract:stop extract extn

六、  中止replicat:stop replicat repn

七、  刪除extract:delete extract extn

八、  刪除replicat:delete extract repn

九、  查看ogg狀態:info all

十、 修改manager參數:edit params mgr

十一、 修改extract參數:edit params extn

十二、 修改replicat參數:edit params repn

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

4.2 OGG日誌路徑

$OGG_HOME/ggserr.log

4.3 OGG開機自啓

操做系統設置:

       一、用oracle用戶創建/oracle/ogg/autostart/info.txt,文件內容以下:

     sh dat

     start mgr

       二、chmod x info.txt

       三、用oracle用戶創建/oracle/ogg/autostart/startmgr.sh,文件內以下:

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

       四、chmod x startmgr.sh

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

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

OGG設置:

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

     一、如下是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

 

    二、配置目標端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

相關文章
相關標籤/搜索