Oracle GoldenGate安装配置教程

来源:互联网 发布:算法的乐趣 高清pdf 编辑:程序博客网 时间:2024/06/09 03:10

Oracle GoldenGate安装配置教程

(2012-12-12 21:00:00)
转载
标签:

it

分类:ORACLE


简介

Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。OracleGolden Gate可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据亚秒一级的实时复制,从而在可以在应急系统、在线报表、实时数据仓库供应、交易跟踪、数据同步、集中/分发、容灾、数据库升级和移植、双业务中心等多个场景下应用。同时,OracleGolden 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控制台输入命令: createsubdirs ,让ogg创建其需要用到的目录

4、 手工在ogg目录下创建discard文件夹,mkdir  discard

5、 配置操作系统环境变量(请确保环境变量配置了ORACLE_HOMEORACLE_SID

exportLD_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 byogg;  (注:账号密码根据实际情况设置)

SQL> grant connect,resource toogg;

SQL> grant unlimited tablespace toogg;

SQL> grant execute on utl_file toogg;

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 toogg;

SQL> @ddl_enable.sql;

进入ogg控制台,测试用户是否创建成功

GGSCI (local) 1> dblogin useridogg

Password: ogg

Successfully logged into database.

       通过上述步骤,ogg就安装成功了。

单项复制的配置

为了能让ogg成功的将源数据库及目标数据库进行同步,下面还需要对oggoracle进行一系列配置(ogg支持多种复制方式,比如单项复制、双向复制等等,因实际需要,本文仅介绍单项复制相关配置)。

首先说说ogg的一些概念:

1、 Managerogg所有服务必须依赖ManagerManger如同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 databasearchivelog;

SQL> alter database forcelogging;

SQL> alter database addsupplemental log data;

SQL> alter databaseopen;

2、 回收站功能会影响同步,需要关闭回收站

SQL>alter session setrecyclebin=off;

SQL>alter system setrecyclebin=off;

3、配置环境变量NLS_LANG(不配置中文同步会乱码)

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

然后将查询的结果配置到linux环境变量中

export NLS_LANG=” SIMPLIFIEDCHINESE_CHINA.ZHS16GBK”

4、登陆ogg控制台,设置需要进行同步的oracle

GGSCI (local) 1> dblogin useridogg

GGSCI (local) 1> add trandatadbuser.*

5、配置oggmanager&启动manager(配置界面操作类似vi

GGSCI (local) 1> edit parammgr

PORT 7809

GGSCI (local) 1> infoall(查看当前mgr状态)

GGSCI (local) 1> startmanager(启动manager,启动完后可以用info all再次查看状态)

6、 添加一个oggextract进程,用于抽取源服务器数据

GGSCI (local) 1> add extractext4,tranlog,begin now (增加一个抽取进程ext4ext4名字可以根据需要修改)

GGSCI (local) 1> add exttrail/oracle/ogg/dirdat/wf,extract ext4 (ext4抽取的源数据变更数据写到该文件夹)

GGSCI (local) 1> edit paramsext4 (修改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、启动oggextract命令

GGSCI (local) 1> start extract ext4(等目标服务器ogg配置成功后再启动ext)

3.2 目标服务器配置

1、登陆ogg控制台

GGSCI (local) 1> dblogin useridogg

2、配置oggmanager&启动manager(配置界面操作类似vi

GGSCI (local) 1> edit parammgr

PORT 7809

DYNAMICPORTLIST7840-7850  --远程队列端口范围

GGSCI (local) 1> infoall(查看当前mgr状态)

3、 添加一个oggreplicat进程,用于更新目标服务器数据

GGSCI (local) 1> edit params./GLOBAL

GSSCHEMA ogg

CHECKPOINTTABLE ogg.checkpoint

GGSCI (local) 2> dblogin useridogg

Password: ogg

Successfully logged into database.

GGSCI (local) 3> addcheckpointtable ogg.checkpoint

Successfully created checkpoint tableogg.CHECKPOINT.

GGSCI (local) 4> ADD replicat rep2EXTTRAIL /hom/wangfan/ggs/dirdat/wf, checkpointtableogg.checkpoint

GGSCI (local) 5> edit paramrep2

--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、启动oggmanager & replicat命令

GGSCI (local) 1> startmanager

GGSCI (local) 1> start replicatrep2

         最后参考源服务器配置,启动ext4

维护相关

4.1 OGG常用命令

1、  启动managerstart manager

2、  启动extractstart extract extn

3、  启动replicatstart replicat repn

4、  停止managerstop manager

5、  停止 extractstop extract extn

6、  停止replicatstop replicat repn

7、  删除extractdelete extract extn

8、  删除replicatdelete 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

      2chmod x info.txt

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

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

      4chmod x startmgr.sh

      5、用root用户编辑 /etc/rc.local ,添加如下信息:

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

OGG设置:

ogg中主进程是manager进程,使用startmgr启动。可以在mgr进程中添加一些参数用来在启动mgr进程的同时启动extractreplicat进程。

    1、以下是extract端的mgr参数配置

  GGSCI (gg01)130> edit params mgr

  PORT 7809

  DYNAMICPORTLIST7800-7909

  --启动mgr进程启动启动extract进程

  AUTOSTART EXTRACT *

  --extract异常终止时会自动启动,5分钟尝试重新启动所有的extract进程,一共尝试3,5分钟清零

  AUTORESTART EXTRACT *,RETRIES3, WAITMINUTES 5, RESETMINUTES 10

 

   2、配置目标端replicat进程自启动,mgr参数中添加如下

 GGSCI (gg02) 140>edit params mgr

 PORT 7809

 --动态端口,当指定端口不可用时,会从以下列表中选择一个可用端口

 DYNAMICPORTLIST7800-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

0 0
原创粉丝点击