很早之前,OGG只支持部署在数据库主机上,这叫本地化部署。而现在OGG支持远端部署,即OGG软件不安装在数据库主机上,而是安装在单独的机器上,负责数据抽取和投递。

这样做的好处:

l 易于管理 - 在单独的服务器上运行Oracle GoldenGate时,您可以更好的管理OGG,降低对生产数据库的影响,比如硬件升级升级,性能调整,软件修补和升级等操作变得更易于管理,风险更低。另一方面,从长远来看,您需要集中管理来监督所有复制操作,将Oracle GoldenGate安装与数据库服务器进行混合,使其难以实现此类解决方案。其中一个原因是某些数据库服务器需要非常有限的访问!第三,您有更多的控制来实现复制策略,如故障切换和复制负载平衡。

l 改进的安全性 - 通过将数据复制移出数据库机器,通常在云中的不同安全区域,配置不同的软件组件有助于保护数据库服务器。

l 更好的性能 - 您不希望复制过程影响生产数据库。在数据库服务器上运行GoldenGate时,Oracle GoldenGate和数据库共享CPU,内存和磁盘IO资源。因此,可能会出现复制过程减慢数据库操作的情况。

l 技术可行 - 另一个重要原因是Oracle GoldenGate现在广泛支持远程捕获和投递,特别是对于Oracle数据库。诸如集成捕获和传送之类的新特性提升了远程捕获和投递的性能,从而帮助您选择新的体系结构,对吞吐量影响较小。

l 云端需要 - 许多云托管数据库(如Amazon AWS RDS数据库)不允许您在数据库服务器上安装任何内容。你别无选择,只能运行远程捕获和投递。

但在某些情况下,可能还是需要本地部署:

l 性能 - 数据量超过Oracle GoldenGate和数据库服务器可以处理的网络带宽,吞吐量和延迟时间无法通过远程捕获和传递来处理。一般来说,远程捕获和投递会带来15-20%的性能损失。但这不是一个官方数字,您需要在评估解决方案时在您的环境中进行测试后决定部署方案。

l Active Data Guard故障后的切换 - 要使Oracle GoldenGate能够支持Active Data Guard故障切换,即priimary切换到standby时,OGG的抽取还能自动接上,则需要将OGG部署到dbfs上,具体可参考:http://www.oracle.com/technetwork/database/availability/ogg-adg-2422372.pdf,这种情况下,是不能远程部署OGG的。

l 操作系统字节序Endianness - 运行Oracle GoldenGate的服务器和运行数据库或数据库服务器的服务器必须具有相同的Endianness。而远端部署的机器无法提供数据库服务器相同的字节序时,只能在本地部署。

l OGG暂不支持 - 对于某些数据库(如MySQL,DB2 for i和DB2 for z/OS),Oracle GoldenGate不支持远程捕获或投递。

OGG远程部署的支持情况

以下DB的支持情况从12.1.2.+ 开始

Oracle GoldenGate for Oracle DB (capture/delivery)

Oracle GoldenGate for MySQL (delivery)

Oracle GoldenGate for DB2 LUW (capture/delivery)

Oracle GoldenGate for Informix (capture/delivery)

Oracle GoldenGate for Big Data (delivery)

Oracle GoldenGate for Teradata (delivery)

Oracle GoldenGate for iSeries (delivery)

Oracle GoldenGate for SQL Server (delivery)

Oracle GoldenGate for JMS (capture/delivery)

针对DB2 z/OS, Non-Stop, and SQL Server,Oracle GoldenGate暂不支持远程捕获。

针对DB2 iSeries,Oracle GoldenGate可以从远程日志中捕获

针对DB2 iSeries,Oracle GoldenGate支持远程日志读取。 此功能允许在远程IBM i系统上运行的GoldenGate捕获程序读取从主IBM i系统生成的日志数据。

这样可以消除Oracle GoldenGate抽取进程与主系统的交互,但是Oracle GoldenGate仍然要求连接到DB2 iSeries主系统,以读取字典表等元数据信息。

如何使用远程捕获和投递

要运行远程捕获/投递,不同的数据库使用不同的方法。

Oracle GoldenGate for Oracle DB

您可以使用以下两种方法执行远程捕获:

(1)使用SQL*Net连接进行集成捕获

(2)基于downstream的实时或归档日志模式捕获。对于downstream数据捕获模式,您需要安装Oracle Data Guard将重做日志文件作为“redo standby log”连续传输到downstream数据库。要求源数据库为10.2.0.4+,下游数据库为11.2.0.3.0+。

Oracle GoldenGate for DB2 LUW

使用DB2 connect,用户可以将远程DB2设置为本地数据库实例。然后,Oracle GoldenGate可以通过DB2 connect的本地访问点来从远程DB2数据库进行捕获。

Oracle GoldenGate for Informix

您可以设置ODBC连接来访问远程服务器上的informix数据库,然后Oracle GoldenGate通过ODBC访问远端informix。需要满足以下要求:两个系统的字节顺序(Endian)应相同,第二个是操作系统平台和位数(32位或64位)必须相同。例如从Linux到Linux,Windows到Windows,Solaris到Solaris,不能跨平台。

Oracle GoldenGate for MySQL

对于MySQL,现在Oracle GoldenGate只支持远程投递,您只需要使用TARGETDB,用户名和密码指定目标数据库连接即可开始投递。同时,还需要MySQL用户具有远程访问权限。

oracle goldengate 远程捕获和投递的更多相关文章

  1. Oracle GoldenGate 18.1发布

    软件下载地址:https://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html 文档下载地址: https:/ ...

  2. Oracle GoldenGate 12c实时捕获SQL Server数据

    在Oracle GoldenGate 12c中,对一些最新的数据库提供了支持,比如SQL Server 2012/2014,当然12c也支持sql server 2008.主要新增特性有: 捕获进程可 ...

  3. OGG 18.1 for mysql远程捕获测试

    Ogg18.1 remote capture要求mysql为5.7版本,只能从linux远程捕获mysql on windows or linux,且不支持DDL捕获.支持远程mysql为commun ...

  4. Oracle GoldenGate 详解

    一.Oracle GoldenGate介绍 GoldenGate软件是一种基于日志的结构化数据复制软件.GoldenGate 能够实现大量交易数据的实时捕捉.变换和投递,实现源数据库与目标数据库的数据 ...

  5. ORACLE GoldenGate在Windows与AIX平台ORACLE的单向、双向数据传输配置及其测试

    第1章...... GoldenGate概述 1.1         GoldenGate技术原理 1.2         GoldenGate可靠的复制 1.3         GoldenGate ...

  6. Oracle GoldenGate 12c (12.1.2.0.1) for IBM DB2 iSeries

    OGG 12.1.2.0.1 for iSeries 在2014.2.15发布,主要新增如下功能: 本地交付(Native Delivery Replicat):新功能允许用户在IBM i服务器上安装 ...

  7. 使用 Oracle GoldenGate 在 Microsoft SQL Server 和 Oracle Database 之间复制事务

    使用 Oracle GoldenGate 在 Microsoft SQL Server 和 Oracle Database 之间复制事务 作者:Nikolay Manchev 分步构建一个跨这些平台的 ...

  8. Oracle GoldenGate实现数据库同步

    前言:最近刚好在弄数据库同步,网上查了些资料再加上自己整理了一些,做个分享! 一.GoldenGate的安装 1.安装包准备 数据库版本:Oracle Database 11g Release 2(1 ...

  9. 建立Oracle GoldenGate凭证

    了解如何为与数据库交互的流程创建数据库用户,分配正确的权限并防止未经授权使用凭据. 主题: 为Oracle GoldenGate分配凭证 保护Oracle GoldenGate凭证 3.1 为Orac ...

随机推荐

  1. 007-docker-安装-mysql:5.6

    1.搜索镜像 docker search mysql 2.拉取合适镜像 docker pull mysql:5.6 docker images 3.使用镜像 docker run -p 3306:33 ...

  2. 设置td中的table置顶

    style="vertical-align: top" <td colspan="11" rowspan="5" style=&quo ...

  3. tomcat调试之固定步骤自动化

    前端开发,使用tomcat调试,大致需要进行如下几个步骤.其中,第一步,进入项目所在目录敲sbt命令来打包,第二步,拷贝lib文件夹,第四步重启tomcat,反反复复已经让我不胜其烦,那么做个简单的b ...

  4. 入门 Webpack,看这篇就够了

    转:https://segmentfault.com/a/1190000006178770 2018年8月25日更新,目前 webpack 已经更新值 4.17.1 ,本文所用到的各种库或多或少有些过 ...

  5. spark提交任务的三种的方法

    在学习Spark过程中,资料中介绍的提交Spark Job的方式主要有三种: 第一种: 通过命令行的方式提交Job,使用spark 自带的spark-submit工具提交,官网和大多数参考资料都是已这 ...

  6. SEO--网站流量提升

    话术设置,提炼优质的话术 关键词的挖掘 1.头脑风暴 (开晨会,一堆人坐在一起聊.) 2.利用搜索引擎相关搜索(将关键词设置为搜索热词,利用工具:百度指数,查看关键词) 3.工具 4.长尾关键词(词比 ...

  7. 无法序列化会话状态。在“StateServer”或“SQLServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象。如果自定义会话状态存储在“Custom”模式下执行了类似的序列化,则适用同样的限制。

    将项目部署到服务器后发现有如下问题,查了网上好多说是需要被序列化的类没有写上[Serializable]标志,所以把全部需要序列化的列都写上了标志发现还是不是,最后查到了发现网上说的并不太准确,而是需 ...

  8. 「美团外卖APP签约快捷支付」流程体验

    §1 添加银行卡 新用户在美团外卖APP订餐支付时,首先要绑定银行卡.如下是“添加银行卡”页,输入卡号后,系统自动调用卡bin库校验卡号的有效性,如果有效会显示发卡行和卡类型(借记卡/贷记卡).  这 ...

  9. shell编程:for循环

    有几个参数执行几次 do done取代了{} 这种用于 文件的个数,用户的个数等. (())里才可以进行加减乘除.

  10. 北京时间转为时间搓 标准时间转为UTC

    int standard_to_stamp(char *str_time)  {          struct tm stm;          int iY, iM, iD, iH, iMin, ...