Oracle-OGG同步TRUNCAT操作分析

2 篇文章 0 订阅
1 篇文章 0 订阅

一、问题描述

         通过OGG进行两个库的数据同步,其中一个表数据存在问题,需要全量重新生成,没有多考虑,直接对源表 truncate 了,在源端全量生成数据的时候,检查发现目标端数据比源表多了一倍多。

 

二、问题解决过程

     1)分析目标表,发现老的数据没有被清理掉。

     2)从基本的原理入手,关键在两个问题:

  • OGG抽取的日志是什么类型的?该类型的日志那些操作会产生?

      

 

         从OGG官方文档中可以看到,OGG抽取的是 Transaction Log,是事务日志。 OGG读取顺序是先读取联机日志,联机日志没读到再读取归档日志。

 

  • truncate 操作会不会产生日志,如果能产生,是否能被OGG抽取到?

         查询发现truncate操作不会产生联机和归档日志,所以在源端进行truncate操作不会通过OGG同步删除数据记录的操作。

 

 

   

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值