To resync one or more tables/schemas on different SCN's using a single or minimum number of replicats without using handlecollisions.

For example, when doing migrations and parallel exports are run.

This can be done with Oracle goldenGate (OGG) 11.1.1.0.x or higher.
Consider the following example with the schema HR and two tables TCUSTORD,
TCUSTMER

The syntax given below is for OGG v11.x.
Please see the NOTE at the end for OGG v12 and higher

1. Capture the SCN information in the extract trails using tokens

table hr.*, Tokens (tk-csn = @GETENV
("TRANSACTION", "CSN")) ;

Step 1 can be skipped if using OGG v11.1.1.1.x and it is needed if using OGG
v11.1.1.0.x

On OGG v11.1.1.1.x and higher the TOKEN is
not needed in the extract as the CSN/SCN is written

by default to the OGG trails

2. Do an SCN based export on source for the interested tables (first TCUSTMER,
then TCUSTORD in
our example)

exp hr/hr tables=hr.tcustmer grants=n statistics=none
triggers=n compress=n FLASHBACK_SCN=4746443

Then run another export on source for TCUSTORD at a different scn

exp hr/hr tables=hr.tcustord grants=n statistics=none
triggers=n compress=n FLASHBACK_SCN=4747033

3. Run the imports on target

4. Add the replicat on target to the beginning of the extract trail

Example parameter file:

replicat r1
userid myogguser password xyz
assumetargetdefs
discardfile dirrpt\r1.dsc, purge
map hr.tcustmer, target myogguser.* , Filter ( @NUMSTR (@TOKEN
("TK-CSN")) > 4746443);
map hr.tcustord, target myogguser.* , Filter ( @NUMSTR (@TOKEN
("TK-CSN")) > 4747033);

This is used to resync one or more tables/ schemas of different SCN's in the
same replicat.

If not using tokens
in the extract on step 1 (OGG versions 11.1 and higher) then the equivalent

mapping to use the
default SCN token from the trail would be

map hr.tcustmer,
target myogguser.* , FILTER ( @GETENV ("TRANSACTION",
"CSN") > 4746443);
map hr.tcustord, target myogguser.* , FILTER ( @GETENV
("TRANSACTION", "CSN") > 4747033);

This example is for a DML only replication setup using OGG version
11.1.1.0.x or higher

NOTE: For OGGv12 the double quotes needs to be replaced
with single quotes since OGG v12 uses ANSI SQL parameter by default

sample1;

1、停止抽取进程、传输进程、复制进程
stop e*
stop p*
stop r*

2、修改抽取进程、传输进程配置,新增表同步
extract:
table MM_PS.T_MCOUPONSINFO_HIS;

pump:
table MM_PS.T_MCOUPONSINFO_HIS;

3、源端增加表附加日志,并启动抽取、传输进程
dblogin userid goldengate password 123

add trandata MM_PS.T_MCOUPONSINFO_HIS
start e*
start p*

4、源端数据库获取当前最新scn

select dbms_flashback.get_system_change_number current_scn from dual;
10930121916224

5、源端数据库按照指定的scn导出表数据

exp mmdb03/*** direct=y rows=y buffer=64000000 flashback_scn=10930121916224 constraints=n grants=n triggers=n

STATISTICS=none file=/ogghome/oggexp/ogg.dmp log=/ogghome/oggexp/ogg.log tables=MM_PS.T_MCOUPONSINFO_HIS

6、将导出的数据导入到目标端数据库
imp mmdb03/*** file=/ogghome/oggexp/ogg.dmp log=/ogghome/oggexp/ogg.log full=y ignore=y buffer=64000000

7、目标端数据库禁掉新增表上的trigger与有级联删除的约束
select owner,table_name,TRIGGER_NAME from dba_triggers where table_name ='T_MCOUPONSINFO_HIS';

8、修改复制进程配置,增加复制表map关系,用filter指定复制scn

map MM_PS.T_MCOUPONSINFO_HIS, target MM_PS.T_MCOUPONSINFO_HIS, filter ( @getenv("TRANSACTION", "CSN") > 10930121916224);

9、启动进程
start r*

10、检查表数据同步情况

http://blog.itpub.net/24996904/viewspace-1226192/

OGG How to Resync Tables / Schemas on Different SCN s in a Single Replicat的更多相关文章

  1. 【故障处理】-OGG 丢失归档20190717

    再次遇到OGG 异常: 归档丢失,OGG 不能找到需要的归档文件. 该表完整expdp 导出评估为 110G,了解到只有插入操作,所以只把归档丢失期间的数据补到目标端就好. 1. 清理目标端 2019 ...

  2. 3.使用OGG进程进行初始化数据

    开始初始化数据的时候要满足下面的条件: 1.disable掉目标段表的外键约束 2.disable掉目标端表的触发器 3.删除目标段表的索引,加快初始化速度 4.目标端表结构创建完成 源端配置初始化抽 ...

  3. OGG 问题

    1.启动复制时报 "ERROR OGG-15050 Oracle GoldenGate Delivery, l***.prm: Error loading Java VM runtime l ...

  4. 76 道 Oracle Goldengate 面试问题

    基础 12c新特性 性能 Troubleshoot 其它 1. Oracle Goldengate 支持部署到哪些拓扑? GoldenGate supports the following topol ...

  5. 1Z0-050

    QUESTION 13 View the Exhibit.Examine the following command that is executed for the TRANSPORT table ...

  6. Oracle11g中数据的倒库和入库操作以及高版本数据导入低版本数据可能引发的问题

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.前言 在10g之前,传统的导出和导入分别使用EXP工具和IMP工具 ...

  7. goldengate初始化

    对丢弃已久的goldengate环境重新配置,使其重新开始跑起来 环境是一个主机上的两个库,都是单机,所以也就没配pump进程了,trail file都是在一个文件夹下的,extract写trail ...

  8. [转]oracle 10g数据泵之impdp-同时导入多个文件

    要了解impdp,请先了解导出,我之前作过导出的笔记:oracle 10g数据泵之expdp.这两个笔记也许只对程序员有用,通常用于把正式区的数据导入到测试区,对数据库管理员也许帮助不大,他们使用这些 ...

  9. 【OCP、OCM、高可用等】小麦苗课堂网络班招生简章(从入门到专家)--课程大纲

    [OCP.OCM.高可用等]小麦苗课堂网络班招生简章(从入门到专家)--课程大纲 小麦苗信息 我的个人信息 网名:小麦苗 QQ:646634621 QQ群:618766405 我的博客:http:// ...

随机推荐

  1. TC SRM 583 DIV 2

    做了俩,rating涨了80.第二个题是关于身份证的模拟题,写的时间比较长,但是我认真检查了... 第三个题是最短路,今天写了写,写的很繁琐,写的很多错. #include <cstring&g ...

  2. poj3349(hash or violence)

    Snowflake Snow Snowflakes Time Limit: 4000MS   Memory Limit: 65536K Total Submissions: 38600   Accep ...

  3. To verify Hadoop releases using GPG

    To verify Hadoop releases using GPG http://hadoop.apache.org/releases.html To verify Hadoop releases ...

  4. 安装mysql 8.0版本时,使用front连接报1251错误或者navicat 连接报错2059解决方案

    这个错误出现的原因是在mysql8之前的版本中加密规则为mysql_native_password,而在mysql8以后的加密规则为caching_sha2_password. 解决此问题有两种方法, ...

  5. 用secureCRT ssh登陆不显示用户名和路径解决方案 分类: 软件工具学习 2015-03-18 16:52 36人阅读 评论(0) 收藏

    方法1         每次开始的时候输入 bash 虽然只能保存一次,但是简便. 方法2 用       vi ~/.bash_profile   编辑这个文件,  有时会提示这个文件不存在,直 ...

  6. Bootloader与Kernel间参数传递机制 taglist【转】

    本文转载自:http://blog.csdn.net/tommy_wxie/article/details/9187821 Tag list被用来在bootloader和Linux kernel 之间 ...

  7. Html5--6-46 渐变效果

    Html5--6-46 渐变效果 学习要点 掌握线性渐变和径向渐变的使用 线性渐变: 属性:linear-gradinet(开始位置 角度,起始颜色,终止颜色 ) 开始位置:渐变开始的位置,属性值可以 ...

  8. hadoop-3.0.0-alpha4启动

    全部启动或者全部停止(注意:第一次启动需要先格式,以后就不需要格式了,不能多次格式化) 1.启动 [root@master sbin]# pwd /usr/hadoop/hadoop-3.0.0-al ...

  9. NIO与IO的区别

    nio是new io的简称,从jdk1.4就被引入了.现在的jdk已经到了1.6了,可以说不是什么新东西了.但其中的一些思想值得我来研究.这两天,我研究了下其中的套接字部分,有一些心得,在此分享.  ...

  10. Android Studio下载安装

    官方下载地址:https://developer.android.google.cn/studio#downloads 因为安卓自带的模拟器会比较慢一些,这里勾选去掉,我们使用夜神模拟器. 这里根据自 ...