专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

Oracle OGG 单向DDL同步 oracle ogg双向同步

ins518 2024-11-01 13:18:42 技术文章 14 ℃ 0 评论

介绍

在《Oracle OGG 单向DML同步》的基础上,添加关于DDL同步的支持!


服务器

操作系统版本

数据库版本

OGG版本

源端

192.168.141.100

CentOS6.8

11.2.0.4

12.2.0.1

目标端

192.168.141.105

CentOS6.8

11.2.0.4

12.2.0.1

配置支持DDL同步(源库配置)

1.给ogg用户授权

grant execute on utl_file to ggusr;

2.添加GGSCHEMA参数

GGSCI (oracle01) 1>EDIT PARAMS ./GLOBALS

GGSCHEMA ggusr

查看参数:

GGSCI (oracle01) 1> view param ./GLOBALS

3.执行相关sql脚本

在oracle用户下使用sys登录,运行相关脚本,脚本文件在ogg目录下/u01/ogg12.2

注意:这些脚本都在OGG目录下(就是执行ggsci的目录)

@marker_setup.sql

@ddl_setup.sql

@role_setup.sql

grant ggs_ggsuser_role to ggusr; --授予权限

@ddl_enable.sql ---这个脚本不要执行,如果需要删除ogg ddl配置时执行!!!!

@?/rdbms/admin/dbmspool.sql --这个脚本不在ogg目录下

@ddl_pin.sql ggusr

执行过程略!

4.位置源端EXTRACT进程

在EXTRACT进程SCOTT_ST中添加"ddl include all" 参数然后重启 SCOTT_ST

重启SCOTT_ST:

stop extract SCOTT_ST

start extract SCOTT_ST

info extract SCOTT_ST

5.目标端修改replicat进程RORA_ST参数文件,添加“ddl include all” 和 "ddlerror default ignore retryop maxretries 3 retrydelay 5",然后重启replicat进程

stop REPLICAT RORA_ST

start REPLICAT RORA_ST

info replicat RORA_ST

测试验证(使用scott用户登录)

1.在源端创建一个表T2,然后插入数据:

create table t2(id number);

insert into t2 values(1);

commit;

2.添加新的字段,然后插入数据

alter table t2 add name varchar2(20);

insert into t2 values(2,'gg_test');

commit;

源端语句执行截图:

3.查看目标端是否正常

目标端初始状态:

源端第一次执行操作后,目标端状态:

源端第二次执行操作后,目标端状态:

至此,测试结束,OGG DDL语句同步测试完成!

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表