ogg双向复制,支持DML、DDL

实现双向复制,就是将现有的单向复制的源端和目标端分别看作是新的目标端和源端,再在新的源端上配置extract抽取进程和extract复制进程,在新目标端配置一个replicat应用进程。可是参考http://blog.csdn.net/u010587433/article/details/41862299再配置一次。不过这次就比较省事多。

1.同样要添加辅助日志、强制写日志、关闭回收站和开启归档

<pre name="code" class="sql"><pre name="code" class="sql">SQL> alterdatabase add supplemental log data;
SQL> alterdatabase force logging;
SQL> alter system set recyclebin=off scope=spfile;
SQL> alter system set log_archive_dest_1='location=/u01/archivelog';
SQL> shutdown immediate
SQL> startup mount
SQL> alter database archivelog;
SQL> alter database open;

 
 

2.为双向支持DDL,新的源端执行相应脚本(对/ogg目录下执行下面脚本)

SQL>@marker_setup
SQL>@ddl_setup
SQL>@role_setup
SQL>grant GGS_GGSUSER_ROLE to ogg;
SQL>@ddl_enable
SQL>@ddl_pin
如果某项脚本执行错误,需要重新执行时,先要执行清除的脚本:

@ddl_remove 
@marker_remove 

3.ogg配置

新的源端配置抽取进程

<pre name="code" class="sql"><span style="font-size:10px;">GGSCI (db1) 1> DBLOGIN USERID ogg, PASSWORD ogg
GGSCI (db1) 2> ADD TRANDATA scott.*
GGSCI (db1) 3> edit params extscott
EXTRACT EXTSCOTT
SETENV(NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
USERID ogg, PASSWORDogg
TRANLOGOPTIONSEXCLUDEUSER ogg   --双向复制的配置关键
EXTTRAIL ./dirdat/aa</span>
<span style="font-size:10px;">DDL INCLUDE ALL                 --双向支持DDL
TABLE scott.*;
GGSCI (db1)11>  ADD EXTRACT EXTSCOTT, TRANLOG,BEGIN NOW
EXTRACT added.
 
GGSCI (db1)12>  ADD EXTTRAIL ./dirdat/aa, EXTRACT EXTSCOTT, MEGABYTES 5
EXTTRAIL added.</span>

 
新的源端配置复制进程 

<span style="font-size:10px;">GGSCI (db1) 15>  EDIT PARAMS PUMSCOTT
EXTRACT PUMSCOTT
SETENV (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
PASSTHRU
RMTHOST db, MGRPORT 7809
RMTTRAIL ./dirdat/pa
TABLE scott.*;

GGSCI (db1) 16>  ADD EXTRACT PUMSCOTT, EXTTRAILSOURCE ./dirdat/aa
EXTRACT added.

GGSCI (db1) 17> ADD RMTTRAIL ./dirdat/pa, EXTRACT PUMSCOTT, MEGABYTES 5

RMTTRAIL added.</span>
新的目标端配置checkpoint

GGSCI (db) 1> EDIT PARAMS ./GLOBALS
CHECKPOINTTABLE ogg.ggschkpt

GGSCI (db) 1> exit

GGSCI (db) 1> DBLOGIN USERID ogg, PASSWORD ogg
Successfully logged into database.

GGSCI (db) 2> ADD CHECKPOINTTABLE
新的目标端配置应用进程
GGSCI (db) 4> EDIT PARAM REPSCOTT

REPLICAT REPSCOTT
SETENV (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
USERID ogg, PASSWORD ogg
HANDLECOLLISIONS
ASSUMETARGETDEFS
DISCARDFILE ./dirrpt/RORA_aa.DSC, PURGE
MAP scott.*, TARGET scott.*;

GGSCI (db) 5> ADD REPLICAT REPSCOTT, EXTTRAIL ./dirdat/pa
开启以上三个进程,查看状态

GGSCI (db) 6> info all
4.验证双向同步。

在新的目标端新建表、插入数据、删除数据、修改表结构、TRUNCATE操作和删除表分别验证成功









  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

上海阿丽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值