GoldenGate V11.1数据复制限制
以下对goldengate数据复制的限制情况进行说明。
不支持文件等非结构化数据复制
GoldenGate依赖对于数据库日志的解析获取数据变化,因此只能支持数据库中的数据变化复制,无法支持文件等非结构化数据的复制。
Oracle数据类型限制
GoldenGate支持Oralce常见数据类型的复制。
GoldenGate不支持的数据类型
1) ANYDATA
2) ANYDATASET
3) ANYTYPE
4) BFILE
5) BINARY_INTEGER
6) MLSLABEL
7) PLS_INTEGER
8) TIMEZONE_ABBR
9) TIMEZONE_REGION
10) URITYPE
11) UROWID
GoldenGate有限制支持XML Type复制
1) 仅限于Oracle 9i及以后版本
2) 表必须有主键或者唯一索引
GoldenGate有限制支持UDT用户自定义类型复制
如果系统中存在UDT用户自定义类型,请联系技术支持人员并提供脚本。
Oracle DML操作支持
GoldenGate当前支持普通表的所有DML操作和有限制支持部分特殊对象的DML操作,对于特殊表或对象请参照后面特殊对象一节的说明。
GoldenGate不支持nologging的表等对象
当表或表空间被设置为nologging后,使用sqlloader或者append等非常规模式插入数据将不会被写入到数据库日志,因此GoldenGate无法获取这些数据变化。建议将所有需要的业务表设置为logging状态,对于nologging的表不予以复制。
GoldenGate暂不支持对象和操作如下
1) REF
2) 使用COMPRESS 选项建立的表空间和表
3) Database Replay
GoldenGate可以通过复制源表支持对于同义词或者DBLink的复制
由于对于这些对象本身的操作发生于其所链接的源数据库对象,数据库日志中并不记录对这些链接目标对象的操作,因此GoldenGate不复制对同义词或者DBLink本身的操作,但这些操作会应用在源表上并产生日志,因此可以通过复制源表复制变化。
GoldenGate有限制支持IOT索引组织表复制
1) 仅限于Oracle 10.2及以后版本
2) 能够支持使用MAPPING TABLE创建的IOT,但是只抽取基表的数据变化,而不是MAPPING TABLE。
3) 不支持以compress模式存储的IOT。例如,不支持存储在一个使用compress选项的表空间里的IOT。
GoldenGate有限制支持Clustered Table复制
1) 仅限于Oracle 9i及以后版本
2) 不支持Encrypted加密和compressed压缩的clustered tables
GoldenGate有限制支持物化视图复制
1) 不支持使用WITH ROWID选项创建的物化视图
2) 源表必须有主键
3) 不支持物化视图的Truncate但支持DELETE FROM
4) 目标物化视图必须是可更新的
5) 只在Oracle 10g或以后的版本支持物化视图的Full refresh
Oracle DDL复制限制
GoldenGateDDL复制的原理是通过Trigger从源数据库获取sql,到目标端进行重现,在实际使用中有较多限制,即源端能够执行的sql到了目标端未必能够执行成功。以下为常见的一些问题:
1) 当SQL语句里面设计的对象在目标不存在时,DDL无法执行成功。例如,源建立了一个DBLINk或create table as select * from mydblink,此时目标端可能并没有这个dblink指向的库或对象,所以sql语句会报错;
2) 当两端的物理位置不同时,建立data file或tablespace等与物理位置相关的语句需要在目标端替换为目标的物理位置;
3) 当创建约束没有指定名称时,在源和目标会生成不同名称的对象,这样以后对这些对象再进行修改时就无法正确映射到目标端;
4) 当复制带有LOB的表时,ddl操作必须等待DML操作全部完成以后再复制;
5) 不能复制表明和列名带有中文的表;
6) 表或其它对象的定义里面不能加入中文注释;
7) 不能复制带有编译错误的CREATE trigger/procedure/function/package等对象;
8) 不能复制结尾带有‘/’的sql语句.
此外,GoldenGate DDL复制需要关闭Oracle的_RECYCLEBIN参数(Oracle 10.1)或者RECYCLEBIN参数(Oracle 10.2及以后版本)。
GoldenGate V11.1数据复制限制的更多相关文章
- GoldenGate实时投递数据到大数据平台(5) - Kafka
Oracle GoldenGate是Oracle公司的实时数据复制软件,支持关系型数据库和多种大数据平台.从GoldenGate 12.2开始,GoldenGate支持直接投递数据到Kafka等平台, ...
- ODAC (V9.5.15) 学习笔记(二十一)数据复制
用TVirtualTable在内存中缓存TOraQuery中的数据,主要应用场景是参照其他数据,需要将TOraQuery中的数据复制到TVirtualTable,由于没有类似于TClientDataS ...
- SQL把表中的数据复制到另一个数据库中
1 删除整张表的数据,并还原自增长值TRUNCATE TABLE TbWeixinActivity 2 3张表左连接select a.ID,c.Name,b.nickname,a.CreateDate ...
- docker 数据共享,数据复制
docker 提供的数据共享的方式有 docker run -it -v:/dataname image 数据复制使用 docker cp containerid:/dataname ...
- SqlServer将表中数据复制到另一张表
insert into phone2(ph,attr,type,carrier) select top 1000 ph,attr,type,carrier from phone 将表phone的字段和 ...
- 将表A的数据复制到表B,以及关于主表和子表的删除办法
如果表A的数据结构和表B的数据结构是一样的,字段名字可以不用相同,但是对应的数据类型是一样的 这样的情况下可以用如下的方式实现将表A的数据复制到表B INSERT INTO #TEMP2 SELECT ...
- Oracle数据库间的数据复制 - SQLPlus中的COPY命令
Copy命令可以实现不同Oracle数据库间的数据的复制,也是可以实现同一数据库的数据复制,其性能表现和导入/导出相同. 根据9i文档,说Copy命令未来会不支持,但实际上Oracle 11g仍然支持 ...
- SQL数据库中把一个表中的数据复制到另一个表中
1.如果是整个表复制表达如下: insert into table1 select * from table2 2.如果是有选择性的复制数据表达如下: insert into table1(colu ...
- ODI利用goldengate实现增量数据捕获
ODI利用goldengate实现增量数据捕获 上个月,Oracle发布了ODI的最新版本10.1.3.6_02,其中增加了针对采用goldengate获取源数据库增量变化的知识模块,这样当系统需要实 ...
随机推荐
- CentOS7设置中文输入法
转自:https://i.cnblogs.com/EditPosts.aspx?postid=8327755&update=1 CentOS7设置中文输入法 安装CentOS7之后,鼓捣了半天 ...
- JSP中动态include与静态include的区别介绍
转自:https://m.jb51.net/article/43304.htm 动态INCLUDE 用法:<jsp:include page="included.jsp" f ...
- Elasticsearch开发环境搭建(Eclipse\MyEclipse + Maven)
前提是, Elasticsearch 编程API入门系列---说在前面的话 Eclipse下Maven新建项目.自动打依赖jar包(包含普通项目和Web项目) setting.xml配置文件 如何在M ...
- 51nod 1717 好数 (水题)
题目: 看起来很复杂,其实就是有多少个素因子就翻转多少次. 然后考虑到只有平方数有奇数个素因子. 一次过,上代码把: #include <iostream> #include <al ...
- 安装Windows服务方法
用sc create 服务名 binPath="路径",不要用老方法InstallUtil会出现一堆的错误
- shell-1.shell概述、2.shell脚本执行方式
目录
- 服务器搭建域控与SQL Server的AlwaysOn环境过程(四)配置AlwaysOn
0 引言 这一篇才真正开始搭建AlwaysOn,前三篇是为搭建AlwaysOn 做准备的. 步骤 1.3 配置AlwaysOn 请先使用本地用户Administrator登录这两个集群节点并执行下面的 ...
- (2016北京集训十)【xsy1529】小Q与进位制 - 分治FFT
题意很简单,就是求这个数... 其实场上我想出了分治fft的正解...然而不会打...然后打了个暴力fft挂了... 没啥好讲的,这题很恶心,卡常卡精度还爆int,要各种优化,有些dalao写的很复杂 ...
- centos7 jumpserver 部署和使用手册(二)
前面已经介绍了jumpserver的部署,基于这篇部署文档,下面介绍下部署完成后的的功能使用: 一.系统设置 1.1根据提供的帐号密码(admin/admin)登录jumpserver 修改 url ...
- 表达式中含or的赋值
or用在赋值表达式的时候,不是返回bool值,而是按以下的情况赋值 如果左侧的表达式估值为True,则返回左侧表达式 否则返回右侧表达式 例子: insignificance = 3 or 1 pri ...