ref:http://blog.sina.com.cn/s/blog_5d29418d0101cvyx.html
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.---(备注:在目标端添加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安装配置的更多相关文章
-
BizTalk 2013R2 WCF-LOB Oracle Adapter安装配置/问题&;解决方法
BizTalk 2013R2 WCF-LOB Oracle Adapter安装配置/问题&解决方法 安装Oracle Adapter 安装Oracle客户端 BizTalk 2013R2 安装 ...
-
windows Sever 2012下Oracle 12c安装配置方法图文教程
windows Sever 2012下Oracle 12c安装配置方法图文教程 Oracle 12c安装配置方法图文教程,具体内容如下 1.我们开启虚拟机 2.Windows Sever 2012启动 ...
-
Oracle客户端安装配置
Oracle客户端安装配置.绿色版Oracle客户端配置使用PLSQL 安装Oracle客户端 准备工作,首先下载对应Oracle版本的客户端,这个可以去Oracle官网下载,加压完目录如下: 点击s ...
-
Oracle GoldenGate常用配置端口
1 简介 Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数 ...
-
oracle goldengate安装
1.ftp工具上传ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip分别到source和target服务器 [oracle@localhost mnt]$ ll ...
-
GoldenGate安装配置
GOLDENGATE安装 1. 下载与数据库对应版本的goldengate安装介质. 2. 创建goldengate系统用户,设置用户环境变量,如果是oracle,建议直接使用oracle作为用户安装 ...
-
Oracle 客户端安装配置
电脑上安装了Oracle11G,我远程导出一个10g的数据库数据时,报了错误,猜测可能是我的11G客户端版本的问题.所以下载了10G的客户端 安装. 其实客户端的配置读取的是两个文件监听配置文件lis ...
-
Windows10 Oracle ODBC安装配置
项目紧迫,需在短时间内交付成果,新团队成员,吐嘈之前数据库设计太low,很难看懂数据库表结构间的关系,为了使新同事更好的了解数据库表结构,特意使用powerDesigner对oracle.mysql数 ...
-
CentOS7 图形化方式安装Oracle 18c 安装配置
下载 Oracle 数据库,zip 包 https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.h ...
随机推荐
-
JavaScript 跳坑指南
JavaScript 跳坑指南 坑0-String replace string的replace方法我们经常用,替换string中的某些字符,语法像这样子 string.replace(subStr/ ...
-
sqlserver 分页sql语句
select * from (select *,row_number() over(order by CONTENT_ID ) as rnum from ArchiveContents) t whe ...
-
ASP.NET - 上传图片方法(单张)
/// <summary> /// 上传图片 /// </summary> /// <param name="fileupload">上传的控件 ...
-
Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解
随着图像识别和深度学习领域的迅猛发展,GPU时代即将来临.由于GPU处理深度学习算法的高效性,使得配置一台搭载有GPU的服务器变得尤为必要. 本文主要介绍在Ubuntu 16.04环境下如何配置Ten ...
-
vue+element-ui之tree树形控件有关子节点和父节点之间的各种选中关系详解
做后端管理系统,永远是最蛋疼.最复杂也最欠揍的事情,也永远是前端开发人员最苦逼.最无奈也最尿性的时刻.蛋疼的是需求变幻无穷,如同二师兄的三十六般变化:复杂的是开发难度寸步难行,如同蜀道难,难于上青天: ...
-
Android -- Glide框架详解(一)
1,使用这个框架快两年了,今天去github上去看了一下,貌似已经从3.X升级到4.X了,想着自己还没有对这个框架在博客上做过总结,所以这里打算出三篇博客来介绍,内容有基本使用.3.X与4.X的不通. ...
-
PHP系统编程--PHP进程信号处理(转)
原地址:https://www.cnblogs.com/linzhenjie/p/5485436.html PHP的pcntl扩展提供了信号处理的功能,利用它可以让PHP来接管信号的处理,在开发服务器 ...
-
337. House Robber III(包含I和II)
198. House Robber You are a professional robber planning to rob houses along a street. Each house ha ...
-
Android从Fragment跳转到Activity
代码改变世界 Android从Fragment跳转到Activity Intent intent = new Intent(getActivity(), LoginActivity.class); s ...
-
bootstrap table分页(前后端两种方式实现)
bootstrap table分页的两种方式: 前端分页:一次性从数据库查询所有的数据,在前端进行分页(数据量小的时候或者逻辑处理不复杂的话可以使用前端分页) 服务器分页:每次只查询当前页面加载所需要 ...