Oracle 11G GoldenGate实现Windows与Windows之间的单向同步
OracleGoldenGate实现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
下载地址:http://down.运维网.com/data/2448081
一、安装前环境检查(source端与target端安装相同):
1、 检查数据库配置情况
检查归档模式、附加日志、强制日志参数是否开启。
SQL> select log_mode,supplemental_log_data_min,force_logging from v$database;
http://s1.运维网.com/images/20180628/1530176366755935.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;
http://s1.运维网.com/images/20180628/1530176414181143.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管理控制台。
http://s1.运维网.com/images/20180628/1530176441643796.png
3 在ogg控制台输入命令:create subdirs,让ogg创建其需要用到的目录
http://s1.运维网.com/images/20180628/1530176465504388.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;
http://s1.运维网.com/images/20180628/1530176503519392.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
http://s1.运维网.com/images/20180628/1530176527745605.png
(2) ddl_setup.sql
SQL>@ddl_setup
http://s1.运维网.com/images/20180628/1530176661619151.png
http://s1.运维网.com/images/20180628/1530176679524177.png
(3) role_setup.sql,作用是删除和创建DDL同步需要的角色,它授权DDL对象上的DML操作。
SQL>@role_setup
http://s1.运维网.com/images/20180628/1530176694347066.png
SQL> grant GGS_GGSUSER_ROLE to ogg;
http://s1.运维网.com/images/20180628/1530176759374781.png
(4) ddl_enable.sql,作用是启用ddl触发器。
SQL> @ddl_enable
http://s1.运维网.com/images/20180628/1530176778262044.png
8 进入ogg控制台,测试用户是否创建成功。
GGSCI (HWORATEST) 1> dblogin userid ogg
http://s1.运维网.com/images/20180628/1530176807149922.png
测试成功,安装完成!
三、配置GoldenGate
source端
1、 配置Manager管理进程参数:
GGSCI (HWORATEST) 1> edit params mgr
http://s1.运维网.com/images/20180628/1530176832250284.png
http://s1.运维网.com/images/20180628/1530176842864304.png
点击 “是”
然后键入以下内容并保存
port 7809
http://s1.运维网.com/images/20180628/1530176867924723.png
2、 配置checkpoint表
GGSCI (HWORATEST) 3> edit params ./GLOBAL
http://s1.运维网.com/images/20180628/1530176884991477.png
点击“是” 并输入以下内容保存
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint
http://s1.运维网.com/images/20180628/1530176900578194.png
添加checkpoint表
GGSCI (HWORATEST) 7> add checkpointtable ogg.checkpoint
添加操作前,请注意先登录
http://s1.运维网.com/images/20180628/1530176915169913.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
http://s1.运维网.com/images/20180628/1530176938311223.png
GGSCI (HWORATEST) 10> edit params ext_w1
http://s1.运维网.com/images/20180628/1530176960610211.png
http://s1.运维网.com/images/20180628/1530176971278163.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
http://s1.运维网.com/images/20180628/1530177016731120.png
GGSCI (HWORATEST) 13>edit params pum_w1
http://s1.运维网.com/images/20180628/1530177026780721.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地址
http://s1.运维网.com/images/20180628/1530177057491916.png
至此,soure端配置基本完毕,可以info all查看:
http://s1.运维网.com/images/20180628/1530177077307053.png
以下进行target端相关配置:
1、 配置Manager管理进程参数:
GGSCI (HWOGG01) 2> edit params mgr
http://s1.运维网.com/images/20180628/1530177226892908.png
http://s1.运维网.com/images/20180628/1530177242846182.png
点击“是”输入以下内容并保存
port 7809
http://s1.运维网.com/images/20180628/1530177259258398.png
2、 配置checkpoint表
GGSCI (HWOGG01) 3> edit params ./GLOBAL
http://s1.运维网.com/images/20180628/1530177292755097.png
http://s1.运维网.com/images/20180628/1530177308538364.png
点击“是”,输入以下内容并保存
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint
http://s1.运维网.com/images/20180628/1530177327107625.png
添加checkpoint表
GGSCI (HWOGG01) 4> add checkpointtable ogg.checkpoint
http://s1.运维网.com/images/20180628/1530177346101982.png
3、 配置目标服务器的复制进程
GGSCI (HWOGG01) 5>add replicat rep_w2, exttrail d:\app\Administrator\ogg\dirdat\rt, checkpointtable ogg.checkpoint
http://s1.运维网.com/images/20180628/1530177361377930.png
GGSCI (HWOGG01) 6> edit params rep_w2
http://s1.运维网.com/images/20180628/1530177395575353.png
http://s1.运维网.com/images/20180628/1530177405220986.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));
http://s1.运维网.com/images/20180628/1530177421190181.png
配置完毕,查看相关信息
http://s1.运维网.com/images/20180628/1530177440697676.png
四、验证测试
最后启动两端mgr进程,并测试(相关命令使用可以键入help查找)
首先启动source端
Start mgr
http://s1.运维网.com/images/20180628/1530177495671549.png
Start ext_w1
Start pum_w1
http://s1.运维网.com/images/20180628/1530177516802859.png
启动target端:
Start mgr
http://s1.运维网.com/images/20180628/1530177527711659.png
Start rep_w2
http://s1.运维网.com/images/20180628/1530177543778453.png
检查target端是否有以下表存在,如果没有,则在source端创建上述表,然后检查是否会复制过来
target端检查:
http://s1.运维网.com/images/20180628/1530177560897604.png
source端 进行建表操作
SQL>create table prun.TESTOGGas select * from prun.cts_role;
http://s1.运维网.com/images/20180628/1530177575537539.png
再检查target端
http://s1.运维网.com/images/20180628/1530177587636400.png
测试成功!
参考:http://blog.itpub.net/29485627/viewspace-1766772/
页:
[1]