以前跟人解释ogg同步,都是说:源端来个insert,目标端也是执行了相同的insert,所以源端和目标端的数据才是一致的。
兴许是加班导致脑袋不清醒,在因对某表大批量操作而考虑拆分进程的时候,忽然对这句话有了疑惑,比如说:同步A表,源端还有与A表相同结构的B表,而目标端没有B表,那么将B表数据插入A表(insert into A select * from B;),按照我之前的说法,ogg同步进程就应该abend了,当时我就觉得自己的理解不太严谨,为了更加确认,做了一个小实验:源端及目标端表结构:
SQL> desc lm.testsName                                      Null?    Type----------------------------------------- -------- ----------------------------ID                                                 NUMBERNAME                                               VARCHAR2(100)SEX                                                VARCHAR2(10)SQL> desc lm2.tests;Name                                      Null?    Type----------------------------------------- -------- ----------------------------ID                                                 NUMBERSEX                                                VARCHAR2(10)NAME                                               VARCHAR2(100)源端新建表(目标端没有):
SQL> create table lm.testsbak as select * from lm.tests;Table created.根据新建表插入同步表数据:
SQL> insert into lm.tests select * from lm.testsbak;4 rows created.SQL> commit;检查源端目标端数据:
SQL> select count(2) from lm.tests;COUNT(2)
----------8SQL> select count(1) from lm2.tests;COUNT(1)
----------8检查其中数据内容,也是一致的。那么,这句话应该这么说:源端来个insert,目标端也是执行了一个类似的insert,ogg同步的是数据变更,而不是语句。

ogg同步的是语句还是数据变更相关推荐

  1. oracle oci.dll无法加载_基于OGG 实现Oracle到Kafka增量数据实时同步

    背景 在大数据时代,存在大量基于数据的业务.数据需要在不同的系统之间流动.整合.通常,核心业务系统的数据存在OLTP数据库系统中,其它业务系统需要获取OLTP系统中的数据.传统的数仓通过批量数据同步的 ...

  2. hive建表语句_Hive数据如何同步到MaxCompute之实践讲解

    摘要:本次分享主要介绍 Hive数据如何迁移到MaxCompute.MMA(MaxCompute Migration Assist)是一款MaxCompute数据迁移工具,本文将为大家介绍MMA工具的 ...

  3. EntityFramework进阶——数据变更冲突

    TimeStamp 更新操作可能伴随数据冲突,我们可以通过并发处理妥善解决这一方面的问题.避免数据冲突比较方便的做法是自动加入字节数组(byte[])类型的TimeStamp属性,对应到数据表中的ro ...

  4. 使用OGG/Kettle实现Oracle到MySQL数据平滑迁移

    本文目录: 一.OGG概述 (一)OGG逻辑架构 二.迁移方案 (一)环境信息 (二)表结构迁移 (三)数据迁移 1.源端OGG配置 (1)Oracle数据库配置 (2)Oracle数据库OGG用户创 ...

  5. 使用SQLServer 2008的CDC功能实现数据变更捕获

    原文: 使用SQLServer 2008的CDC功能实现数据变更捕获 最近由于工作需要,研究了一下2008 CDC功能,觉得还不错,下面整理了一下研究过程,虽然比较粗略,但是基本上能用了,如果有补充请 ...

  6. 关于跨DB增量(增、改)同步两张表的数据小技巧

    有些场景下,需要隔离不同的DB,彼此DB之间不能互相访问,但实际的业务场景又需要从A DB访问B DB的情形,这时怎么办?我认为有如下常规的三种方案: 1.双方提供RESET API,需要访问不同DB ...

  7. EF Core 数据变更自动审计设计

    EF Core 数据变更自动审计设计 Intro 有的时候我们需要知道每个数据表的变更记录以便做一些数据审计,数据恢复以及数据同步等之类的事情, EF 自带了对象追踪,使得我们可以很方便的做一些审计工 ...

  8. OGG同步字符集从US7ASCII to ZHS16GBK故障解决

    OGG同步字符集从US7ASCII to ZHS16GBK故障解决 系统环境 源端:      aix 5.3     oracle 9.2.0.7 for rac     IP 192.168.12 ...

  9. DB数据变更缓存分布式更新的zk分布式锁解决方案

    DB数据变更缓存分布式更新的zk分布式锁解决方案 KafkaConsumer kafak消费线程,DB数据变更后,将消息推送到kafka topic,由消费线程进行消费 属性  1.ConsumerC ...

最新文章

  1. 下载免费电子书:A Byte of Vim [转]
  2. STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现
  3. 不同的PCB混装方式及加工工艺
  4. PyTorch - torchvision - datasets
  5. C# Stream 和 byte[] 之间的转换(文件流的应用)
  6. 云计算十年 腾讯新一代企业安全助力云化之路
  7. MarkDownPad2 注册码
  8. 基础【循环】-----(枚举器)------(转)
  9. C语言课程设计题库及答案,C语言课程设计题目.docx
  10. Android浏览图片,点击放大至全屏效果
  11. Struts2中的类型转换
  12. C#移除对象中的属性(model类或集合等)JObject
  13. 图书借阅与图书管理系统的设计与实现,源码+论文。
  14. php 数据库查重,使用SimHash进行海量内容数据查重 - PHP版
  15. 什么东西可以改善睡眠,可以试试这些助眠好物改善睡眠
  16. 如何用python编写程序打开csv格式文件
  17. lumen php命令,lumen控制器调用artisan
  18. elementui固定表格头部
  19. Vue 实现 H5video 视频标签 禁止快进 最优
  20. informix-系统视图

热门文章

  1. COO白眉:区块链的运营不是用户关系,而是同盟者!
  2. 在Ubuntu上为Android系统编写Linux内核驱动程序 2
  3. 暗黑1.09服务器搭建
  4. 解决proteus仿真时出现的错误 Cannot open 'C:\User\***\AppDate\Local\Temp\LISA4832.SDF'
  5. 家乡自有黄金屋 快手新乡村网红的“返乡经济学”
  6. php session在高并发问题
  7. mysql for python 安装_MySQLdb for python 安装
  8. Java程序编译后的扩展名_一个Java源程序经过编译后,得到的文件扩展名一定是.class。...
  9. UVA 1220 Party at Hali-Bula (树状DP+记忆化搜索)
  10. Unity技术手册 - 生命周期旋转RotationOverLifetime-速度旋转RotationBySpeed-外力ExternalForces