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
下载地址: http://down.运维网.com/data/2448081
一、安装前环境检查( source端与 target端安装相同):
1、 检查数据库配置情况
检查归档模式、附加日志、强制日志参数是否开启。
SQL> select log_mode,supplemental_log_data_min,force_logging from v$database;
默认情况下归档模式、附加日志、强制日志参数是关闭的。
启动归档模式、附加日志、强制日志。其中开启归档模式需要重启数据库,开启附加日志、强制日志不需要重启数据库。
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;
二、安装 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管理控制台。
3 在 ogg控制台输入命令: create subdirs,让 ogg创建其需要用到的目录
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;
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
(2) ddl_setup.sql
SQL>@ddl_setup
(3) role_setup.sql,作用是删除和创建 DDL同步需要的角色,它授权 DDL对象上的 DML操作。
SQL>@role_setup
SQL> grant GGS_GGSUSER_ROLE to ogg;
(4) ddl_enable.sql,作用是启用 ddl触发器。
SQL> @ddl_enable
8 进入 ogg控制台,测试用户是否创建成功。
GGSCI (HWORATEST) 1> dblogin userid ogg
测试成功,安装完成!
三、配置 GoldenGate
source端
1、 配置 Manager管理进程参数:
GGSCI (HWORATEST) 1> edit params mgr
点击 “是 ”
然后键入以下内容并保存
port 7809
2、 配置 checkpoint表
GGSCI (HWORATEST) 3> edit params ./GLOBAL
点击 “是 ” 并输入以下内容保存
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint
添加 checkpoint表
GGSCI (HWORATEST) 7> add checkpointtable ogg.checkpoint
添加操作前,请注意先登录
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
GGSCI (HWORATEST) 10> edit params ext_w1
点击 “是 ”并输入以下内容保存
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
GGSCI (HWORATEST) 13> edit params pum_w1
点击 “是 ” ,并输入以下内容保存
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地址
至此, soure端配置基本完毕,可以 info all查看:
以下进行 target端相关配置:
1、 配置 Manager管理进程参数:
GGSCI (HWOGG01) 2> edit params mgr
点击“是 ”输入以下内容并保存
port 7809
2、 配置 checkpoint表
GGSCI (HWOGG01) 3> edit params ./GLOBAL
点击“是 ”,输入以下内容并保存
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint
添加 checkpoint表
GGSCI (HWOGG01) 4> add checkpointtable ogg.checkpoint
3、 配置目标服务器的复制进程
GGSCI (HWOGG01) 5>add replicat rep_w2, exttrail d:\app\Administrator\ogg\dirdat\rt, checkpointtable ogg.checkpoint
GGSCI (HWOGG01) 6> edit params rep_w2
点击“是 ”,输入以下内容并保存
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));
配置完毕,查看相关信息
四、验证测试
最后启动两端 mgr进程,并测试 (相关命令使用可以键入 help查找 )
首先启动 source端
Start mgr
Start ext_w1
Start pum_w1
启动 target端:
Start mgr
Start rep_w2
检查 target端是否有以下表存在,如果没有,则在 source端创建上述表,然后检查是否会复制过来
target端检查:
source端 进行建表操作
SQL>create table prun.TESTOGG as select * from prun.cts_role;
再检查 target端
测试成功!
参考: http://blog.itpub.net/29485627/viewspace-1766772/
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com