1 简介

Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。Oracle Golden Gate可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据亚秒一级的实时复制,从而在可以在应急系统、在线报表、实时数据仓库供应、交易跟踪、数据同步、集中/分发、容灾、数据库升级和移植、双业务中心等多个场景下应用。同时,Oracle Golden Gate可以实现一对一、广播(一对多)、聚合(多对一)、双向、点对点、级联等多种灵活的拓扑结构

2 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

Oracle GoldenGate常用配置端口的更多相关文章

  1. Oracle GoldenGate常用参数详解

    Oracle GoldenGate常用参数详解http://blog.itpub.net/28389881/viewspace-2564461/

  2. [转]Oracle GoldenGate安装配置

    ref:http://blog.sina.com.cn/s/blog_5d29418d0101cvyx.html 1 简介 Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软 ...

  3. Oracle GoldenGate常用参数

    OGG(Oracle GoldenGate)参数介绍 所有的GoldenGate进程均有参数文件 Manager Extract Replicat Utilities 所有参数均有缺省配置 实际应用只 ...

  4. Oracle GoldenGate理论

    1Oracle GoldenGate处理方法和支持的数据库Oracle GoldenGate在多样和异构的基础IT平台中,可以在事务级别上进行数据交换和数据操作.在保证交易完整性和最小的开销的条件下, ...

  5. ORACLE GoldenGate在Windows与AIX平台ORACLE的单向、双向数据传输配置及其测试

    第1章...... GoldenGate概述 1.1         GoldenGate技术原理 1.2         GoldenGate可靠的复制 1.3         GoldenGate ...

  6. Oracle GoldenGate 二、配置和使用

    Oracle GoldenGate 二.配置和使用 配置和使用GoldenGate的步骤 1 在源端和目标端配置数据库支持GoldenGate 2 在源端和目标端创建和配置GoldenGate实例 3 ...

  7. 『OGG 03』Win7 配置 Oracle GoldenGate 一次性成功(包括Adapter Java)

    安装Oracle: 安装 Oracle_11g 32位[Oracle 32位的话,OGG 也必须是 32位,否则会有0xc000007b无法正常启动 错误] 安装目录为 D:\oracle\produ ...

  8. 『OGG 02』Win7 配置 Oracle GoldenGate Adapter Java 踩坑指南

    上一文章 <__Win7 配置OGG(Oracle GoldenGate).docx>定下了 两个目标: 目标1: 给安装的Oracle_11g 创建 两个用户 admin 和 root ...

  9. 配置Oracle GoldenGate安全性

    本章介绍如何配置Oracle GoldenGate安全性. 本章包括以下部分: Overview of Oracle GoldenGate Security Options Encrypting Da ...

随机推荐

  1. hbase记录-修改压缩格式

    在业务空闲的时候修改压缩格式 先测试 ---测试表create 'test', { NAME => 'c',VERSIONS => 1}desc 'test'disable 'test'a ...

  2. rabbitmq用户授权

    创建用户 rabbitmqctl add_user kye01 123456 设置用户角色 rabbitmqctl set_user_tags kye01 monitoring 查看用户清单 rabb ...

  3. 安装阿里云github提供的修改版minikube

    由于kubenetes域名背墙(gcr.io),如kubernetes-dashboard服务依赖不能正常使用. $ docker pull gcr.io/google_containers/paus ...

  4. 四种常见的 POST 提交数据方式(application/x-www-form-urlencoded,multipart/form-data,application/json,text/xml)

    四种常见的 POST 提交数据方式(application/x-www-form-urlencoded,multipart/form-data,application/json,text/xml) 转 ...

  5. java了解哪些锁

    问题: 1.Java里的锁了解哪些? 说了Lock和synchronized  它们的使用方式和实现原理有什么区别呢?使用的话,synchronize用于方法和代码块,可以锁对象和类以及方法,Lock ...

  6. 微信现金红包 python

    微信现金红包发送接口,好像没法限制一个用户一个活动只能领取一次红包,在调用红包接口上,自己做了限制 REDPACK_RECORD 建表sql -- Create table create table ...

  7. 四、u-boot 链接脚本

    4.1 C语言中的段 编译器在编译程序的时候,将程序中的所有的元素分成了一些组成部分,各部分构成一个段,所以说段是可执行程序的组成部分. 代码段:代码段就是程序中的可执行部分,直观理解代码段就是函数堆 ...

  8. u-boot移植(一)---准备工作

    一.工具链的制作 1.1 工具 软件工具:crosstool-ng 下载地址:git clone https://github.com/crosstool-ng/crosstool-ng crosst ...

  9. tomcat顺序图摘要

    1.Connector 处理一次请求顺序图 2.Context 和 wrapper 的处理请求时序图 3. 参考: https://www.ibm.com/developerworks/cn/java ...

  10. C - Musical Theme (后缀数组)

    题目链接:https://cn.vjudge.net/contest/283743#problem/C 题目大意:给你n个数组,然后问你是否有多个“相似”且不重叠的子串的长度大于等于5(两个子串相似当 ...