oracle单项同步,Oracle 11G GoldenGate实现Windows与Windows之间的单向同步

Oracle  GoldenGate实现Windows与Windows之间的单向同步

本次实验都是在win环境进行,目的通过GoldenGate实现Windows与Windows之间的单向同步进行对源库复制备份。

实验环境说明

操作系统:Windows 2008 R2  ,

数据库:oracle 11.2.0.1.0 ,

GoldenGate:11.2.1.0.3 for Microsoft Windows x64

一、安装前环境检查(source端与target端安装相同):

1、检查数据库配置情况

检查归档模式、附加日志、强制日志参数是否开启。

SQL> select log_mode,supplemental_log_data_min,force_logging from v$database;

f1237a834796a2e9086496ed6ee965f7.png

默认情况下归档模式、附加日志、强制日志参数是关闭的。

启动归档模式、附加日志、强制日志。其中开启归档模式需要重启数据库,开启附加日志、强制日志不需要重启数据库。

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;

7d16323765fc4b9daf93ab6da7c4b720.png

二、安装GoldenGate

1 首先将Oracle GoldenGate 11.2.1.0.3 for Microsoft Windows x64 (64-bit)拷贝到并解压缩到D:\app\Administrator\目录下(该路径可以根据需要自行选择),解压完成后将目录名改为ogg。

2 进入D:\app\Administrator\ogg\目录,运行ggsci,进入ogg管理控制台。

19f4c82376b365ac5a4fc87a7bbb8312.png

3 在ogg控制台输入命令:create subdirs,让ogg创建其需要用到的目录

99faf154de47666b0090476997dd64ec.png

4 将D:\app\Administrator\ogg目录下的category.dll和ggsmsg.dll文件拷贝到SYSTEM32目录中。

5 手工在ogg目录下创建discard文件夹:md discard

6 在Oracle中创建GoldenGate专属用户ogg,要先创建独立的表空间给ogg用户,否则后面安装会报错;

D:\app\Administrator\ogg>sqlplus / as sysdba

SQL> create tablespace ogg_tbs datafile 'd:\app\administrator\oradata\hwprod\ogg_tbs01.dbf' size 1024M;

SQL> alter tablespace ogg_tbs add datafile 'd:\app\administrator\oradata\hwprod\ogg_tbs02.dbf' size 1024m;

SQL> alter tablespace ogg_tbs add datafile 'd:\app\administrator\oradata\hwprod\ogg_tbs03.dbf' size 1024m;

SQL>create user ogg identified by oracle default tablespace ogg_tbs quota unlimited on ogg_tbs;

SQL>grant dba to ogg;  (涉及到DDL复制,需授予给dba权限)

SQL> grant execute on utl_file to ogg;

3371cc8957c678e6c7df4199dbb7c242.png

7为新创建的ogg用户执行配置脚本。在ogg的安装目录下使用sys登陆sqlplus,然后执行markker_setup.sql,ddl_setup.sql,role_setup.sql,ddl_enable.sql。

(1)marker_setup.sql,作用是安装DDL支持所需要的GoldenGate marker系统。

SQL>@ marker_setup

12b384cb670724286d329d334a9823c3.png

(2)ddl_setup.sql

SQL>@ddl_setup

890492575ec074d747dc8423467b6a5a.png

6dc9a455fcbc59e6b4ca9cbb1101ea60.png

(3)role_setup.sql,作用是删除和创建DDL同步需要的角色,它授权DDL对象上的DML操作。

SQL>@role_setup

a75656276adb318a255750bc2d99876a.png

SQL> grant GGS_GGSUSER_ROLE to ogg;

a1f2463bed4495828d20136123e13648.png

(4)ddl_enable.sql,作用是启用ddl触发器。

SQL> @ddl_enable

034f734057de2ac29c76273529d8fa49.png

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

GGSCI (HWORATEST) 1> dblogin userid ogg

b5111a9c2349f30cea6f114e7523e65b.png

测试成功,安装完成!

三、配置GoldenGate

source端

1、配置Manager管理进程参数:

GGSCI (HWORATEST) 1> edit params mgr

b68a5b93d5c5d1dfeb4f9c42932769fa.png

43ea99557709bfb5813b186f5f70fee5.png

点击 “是”

然后键入以下内容并保存

port 7809

f85b1f26a7b128b21c6b026ab1535677.png

2、配置checkpoint表

GGSCI (HWORATEST) 3> edit params ./GLOBAL

b21f4db64e8c4e6c01ad7333a3239b86.png

点击“是” 并输入以下内容保存

GGSCHEMA ogg

CHECKPOINTTABLE ogg.checkpoint

64946aa7527d532f393c35dec7b3cf87.png

添加checkpoint表

GGSCI (HWORATEST) 7> add checkpointtable ogg.checkpoint

添加操作前,请注意先登录

a303b9230c084841162b3e0c3e5aa99b.png

3、配置服务器的抽取进程

GGSCI (HWORATEST) 8> add extract ext_w1,tranlog, begin now

GGSCI (HWORATEST) 9> add exttrail d:\app\Administrator\ogg\dirdat\wt, extract ext_w1

95ded9927f8c7b9e3cfe05ac94855fa3.png

GGSCI (HWORATEST) 10> edit params ext_w1

e517914803ea1cb5620f032edebcc12f.png

7be34eff42569030233c1eb1c953bb30.png

点击 “是”并输入以下内容保存

ddl include all

extract ext_w1

userid ogg, password oracle

exttrail D:\app\Administrator\ogg\dirdat\wt

table prun.*;

注意,上述是包含DDL复制,主要是对prun的所有对象操作

4、配置服务器的投递进程

GGSCI (HWORATEST) 11> add extract pum_w1, exttrailsource D:\app\Administrator\ogg\dirdat\wt, begin now

GGSCI (HWORATEST) 12> add rmttrail D:\app\Administrator\ogg\dirdat\rt, extract pum_w1

84cf8e6c89a3c76b6c0ed8ea1a161893.png

GGSCI (HWORATEST) 13>  edit params pum_w1

541f934b3d68e90542085fd5664b0d3e.png

点击 “是” ,并输入以下内容保存

extract pum_w1

userid ogg, password oracle

rmthost 192.168.10.19, mgrport 7809

rmttrail D:\app\Administrator\ogg\dirdat\rt

table prun.*;

注意,上述IP为target端IP地址

94bf46bd3705a6471267b263d11de113.png

至此,soure端配置基本完毕,可以info all查看:

a4060923fdcc3cd9d51ec058ac6ae741.png

以下进行target端相关配置:

1、配置Manager管理进程参数:

GGSCI (HWOGG01) 2> edit params mgr

ad24c52b2991110b751ee6fa37982cd7.png

a8a310aefb2e9a57e85568e056fadabd.png

点击“是”输入以下内容并保存

port 7809

3f9444fb0e57d8d0a262711c0fd57b29.png

2、配置checkpoint表

GGSCI (HWOGG01) 3> edit params ./GLOBAL

b5f7cb20464af9d19fb552aa607a00f9.png

40575734699b9ce8802449a8457e5384.png

点击“是”,输入以下内容并保存

GGSCHEMA ogg

CHECKPOINTTABLE ogg.checkpoint

80f1585eda6a2cd0b80bad6b1a6b455a.png

添加checkpoint表

GGSCI (HWOGG01) 4> add checkpointtable ogg.checkpoint

d6c7e118309863053195222cb1a6a572.png

3、配置目标服务器的复制进程

GGSCI (HWOGG01) 5>add replicat rep_w2, exttrail d:\app\Administrator\ogg\dirdat\rt, checkpointtable ogg.checkpoint

a77b0a7635a5a1bed689d7c0889f5f2a.png

GGSCI (HWOGG01) 6> edit params rep_w2

6788604f4507687968545184648e5fa2.png

804b36957de1e44ca165b930a10941ac.png

点击“是”,输入以下内容并保存

replicat rep_w2

ddl include all

ddlerror default ignore retryop maxretries 3 retrydelay 5

userid ogg, password oracle

assumetargetdefs

discardfile d:\app\Administrator\ogg\dirdat\rep_w2_discard,append

map prun.*, target prun.*

RESOLVECONFLICT (UPDATEROWEXISTS, (DEFAULT, OVERWRITE))

RESOLVECONFLICT (INSERTROWEXISTS, (DEFAULT, OVERWRITE))

RESOLVECONFLICT (DELETEROWEXISTS, (DEFAULT, OVERWRITE))

RESOLVECONFLICT (UPDATEROWMISSING, (DEFAULT, IGNORE))

RESOLVECONFLICT (DELETEROWMISSING, (DEFAULT, IGNORE));

eac4859d1252b76a9121d715aa8639fa.png

配置完毕,查看相关信息

b9df00259eae43b830dc4a1ed03e41c3.png

四、验证测试

最后启动两端mgr进程,并测试(相关命令使用可以键入help查找)

首先启动source端

Start mgr

45bf5324a40b08130d56fcbfee872cf3.png

Start ext_w1

Start pum_w1

658fee56362bb20a86b928406efc8d80.png

启动target端:

Start mgr

c7cd29dedceda2bc7cfe0c34272b691a.png

Start rep_w2

0c32b39912a78792d9fb898a98449b00.png

检查target端是否有以下表存在,如果没有,则在source端创建上述表,然后检查是否会复制过来

target端检查:

96ec42a877c849675ed16a2ddbab3542.png

source端 进行建表操作

SQL>create table prun.TESTOGG  as select * from prun.cts_role;

d0551c8749c12f67a680b9f8b1f7a73a.png

再检查target端

ba9f57daee8baaf99b670e972f5dbd49.png

测试成功!

原文:http://blog.51cto.com/pimg2005/2133820

第1章 GoldenGate概述 5 1.1 GoldenGate技术原理 5 1.2 GoldenGate可靠的复制 8 1.3 GoldenGate支持操作系统和数据库类型 8 第2章 安装GoldenGate 9 2.1 安装GoldenGate环境 9 2.2 分别在源数据库,目标数据库安装GoldenGate 9 2.2.1 下载GoldenGate 9 2.2.2 解压 10 2.2.3 安装GoldenGate 10 2.2.4 同时在目标数据库安装GoldenGate 11 第3章 把源数据库的数据同步到目标数据库中 11 3.1 设置ORACLE_HOME,ORACLE_SID环境变量 11 3.2 在源数据库ora01上打开归档日志及其辅助日志 12 3.3 在源数据库,目标数据库创建GoldenGate GLOBALS参数文件 13 3.3.1 在源数据库创建 13 3.3.2 创建Goldengate manager服务 13 3.3.3 在目标数据库安装上面步骤创建manager 14 3.4 在源数据库,目标数据库配置mgr,启动manager进程 14 3.4.1 配置manager服务的mgr配置文件 14 3.4.2 启动mgr 15 3.4.3 同样在目标数据库配置mgr文件 15 3.5 测试把源数据库数据同步到目标数据库数据库上 16 3.5.1 在源数据库创建test01数据库用户 16 3.5.2 执行GoldenGate的测试脚本,创建表 16 3.5.3 插入数据脚本 17 3.5.4 在goldengate中用oracle用户登陆数据库 17 3.5.5 增加需要传输的用户表 18 3.5.6 在目标数据库创建用户及其表结构 18 3.6 用goldengate中的direct load方式导入数据到目标数据库的test02用户表上 19 3.6.1 在源数据库配置一个extract进程 eini01 19 3.6.2 在目标数据库端配置一个replicat进程 19 3.6.3 在源数据库执行初始化过程 20 3.6.4 验证目标数据库端的test02用户表数据是否和源数据库一样 20 第4章 把源数据库的修改数据同步到目标数据库中 21 4.1 在源数据库配置一个EXTRACT进程及配置其文件 21 4.1.1 配置EXTRACT文件 21 4.1.2 在GGSCI.exe增加一个EXTRACT进程 22 4.2 配置data pump 23 4.2.1 在源数据库端添加一个pump进程 23 4.2.2 在源数据库的ggsci中增加extract进程 24 4.2.3 在源数据库执行RMTTRAIL 24 4.3 启动data pump capture process 24 4.4 在目标数据库端配置change delivery 26 4.5 在目标数据库中创建goldengate专属用户及其表 26 4.6 在目标数据库配置replicat进程 27 4.6.1 在ggsci增加一个replicat进程 27 4.6.2 编辑配置replicat文件 27 4.7 启动replicat进程 28 4.8 测试检查同步结果 28 4.8.1 在源数据库执行插入数据 28 第5章 把源数据库的DDL(表结构)修改同步到目标数据库中 32 5.1 在源数据库端关闭数据库的回收站 32 5.2 编辑源数据库参数文件GLOBALS 32 5.3 在源数据库创建goldengate01用户,并创建goldengate所需要的表 33 5.4 检查源数据库上的表是否安装好 35 5.5 修改源数据库配置extract文件 35 5.6 重新启动extract进程 36 5.7 验证源数据库是否可以同步表结构到目标数据库中 36 第6章 配置源数据库、目标数据库的双向数据传输 36 6.1 关闭目标数据库回收站,打开数据库辅助日志 37 6.2 在源数据库端添加checkpoint表,实现一致性 37 6.3 在源数据库增加一个replicat进程 38 6.4 在源数据库创建一个checkpoint表 38 6.5 编辑配置replicat进程 39 6.6 在目标数据库端配置GLOBALS文件 39 6.7 在目标数据库安装goldengate用户需要的表 39 6.8 在目标数据库配置一个extract进程 40 6.9 在目标数据库端配置一个pump进程 40 6.10 在源数据库端启动replicat进程 42 6.11 在目标数据库中启动extract、replicat的进程 42 6.12 目标数据库可以把数据、表结构的修过同步到源数据库服务器上 42 第7章 备注: 44 7.1 Oracle官网的下载地址 44 7.2 GoldenGate的GLOBALS配置文件内容 44 7.3 GoldenGate的eiex01配置文件内容 44 7.4 GoldenGate的epmp01配置文件内容 44 7.5 GoldenGate的rora01配置文件内容 45 7.6 GoldenGate的eiexbb配置文件内容 45 7.7 GoldenGate的epmpbb配置文件内容 45 7.8 GoldenGate的rorabb配置文件内容 45 7.9 更改GoldenGate的复制时间点 46 7.10 查看GoldenGate命令格式 46 7.11 查看manager,extract,replicat是否运行 47 7.12 查看goldengate进程的错误 48
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值