GoldenGate安装部署及解决方案
目录
GoldenGate安装部署及解决方案 .................................................................................................. 1
1、GoldenGate 简介 ............................................................................................................... 2 2、文档约定和说明 ................................................................................................................. 5 3、GoldenGate软件安装 ........................................................................................................ 5
3.1 GoldenGate软件安装包下载 .................................................................................... 6 3.2 Windows下安装 ......................................................................................................... 6 3.3 Linux和Unix下安装 .................................................................................................. 8 4、GoldenGate同步基本配置 ................................................................................................ 8
4.1 oracle之间同步和GoldenGate基础......................................................................... 9 4.2 oracle与db2同步 .................................................................................................... 17 4.3 oracle与sybase同步 ............................................................................................... 18 5、GoldenGate同步方案 ...................................................................................................... 19
5.1 使用GoldenGate初始化加载 ................................................................................ 19 5.2 一对多数据同步(广播复制) .............................................................................. 21 5.3 多对一数据同步(集中复制) .............................................................................. 22 5.4 数据转换和过滤 ...................................................................................................... 23 5.5 关于目标端高数据安全性下的GoldenGate配置方案 ......................................... 27 5.6 GoldenGate双向复制(active-active) .................................................................. 30 6、GoldenGate数据同步性能测试 ...................................................................................... 33
6.1 测试中主要监测数据和监测方式 .......................................................................... 33 6.2 测试脚本和GoldenGate配置 ................................................................................ 34 6.3 测试步骤 .................................................................................................................. 38 6.4 性能测试结果 .......................................................................................................... 40 7、GoldenGate推荐配置 ...................................................................................................... 42
7.1 添加必要的环境参数 .............................................................................................. 42 7.2 BATCHSQL参数 ......................................................................................................... 42 7.3 数据库用户密码加密 .............................................................................................. 43 7.4 trail再压缩 ............................................................................................................... 44 8、GoldenGate Troubleshooting ............................................................................................ 45
8.1 一些常用的进程信息和日志的查看方式 .............................................................. 45 8.2 解析trail文件 ......................................................................................................... 45 附: GoldenGate新版本的一个特性 .................................................................................. 46
1
参考文档 ................................................................................................................................. 47
文档控制
1、GoldenGate 简介
GoldenGate软件是一种基于日志的结构化数据复制软件,它通过解析源数据库在线日志或归档日志获得数据的增删改变化,再将这些变化应用到目标数据库,实现源数据库与目标数据库实时同步(real-time data synchronize)、双活(active-active high availability)。GoldenGate软件可以在异构的IT基础结构(包括几乎所有常用操作系统
2
平台和数据库平台)之间实现大量数据亚秒一级的实时复制,其复制过程简图如下:
如上图所示,GoldenGate的数据复制过程如下: ?
利用捕捉进程(Capture Process)在源系统端读取Online Redo Log或Archive Log,然后进行解析,只提取其中数据的变化如增、删、改操作,并将相关信息转换为GoldenGate自定义的中间格式存放在队列文件(trail)中。再利用传送进程将队列文件通过TCP/IP传送到目标系统。捕捉进程在每次读完log中的数据变化并在数据传送到目标系统后,会写检查点(checkpoint),记录当前完成捕捉的log位置,检查点的存在可以使捕捉进程在中止并恢复后可从检查点位置继续复制; ?
目标系统接受数据变化并缓存到GoldenGate队列当中,队列为一系列临时存储数据变化的文件,等待投递进程读取数据; ?
GoldenGate投递进程从队列中读取数据变化并创建对应的SQL语句,通过数据库的本地接口执行,提交到数据库成功后更新自己的检查点,记录已经完成复制的位置,数据的复制过程最终完成。
由此可见,GoldenGate是一种基于软件的数据复制方式,它从数据库的日志解析数据的变化(数据量只有日志的四分之一左右)。GoldenGate将数据变化转化为自己的格式,直接通过TCP/IP网络传输,无需依赖于数据库自身的传递方式,而且可以通过高达9:1的压缩率对数据进行压缩,可以大大降低带宽需求。在目标端,GoldenGate可以通过交易重组、分批加载等技术手段大大加快数据投递的速度和效率,降低目标系统的资源占用,可以在亚秒级实现大量数据的复制,并且目标端数据库是活动的
GoldenGate提供了灵活的应用方案,基于其先进、灵活的技术架构可以根据用户需求组成各种拓扑结构,如图所示:
3
GoldenGate可以提供可靠的数据复制,主要体现在下面三点: ? (1)保证事务一致性
GoldenGate在灾备数据库应用复制数据库交易的顺序与在生产中心数据库上的顺序相同,并且按照相同的事务环境提交,确保在目标系统上数据的完整性和读一致性,为实时查询和事务处理创造了条件。 ? (2)检查点机制保障数据无丢失
GoldenGate的抽取和复制进程使用检查点机制记录完成复制的位置。对于抽取进程,其检查点记录当前已经抽取日志的位置和写队列文件的位置;对于投递进程,其检查点记录当前读取队列文件的位置。检查点机制可以保证在系统、网络或GoldenGate进程故障重启后数据无丢失。
(3)可靠的数据传输机制
GoldenGate用应答机制传输交易数据,只有在得到确认消息后才认为数据传输完成,否则将自动重新传输数据,从而保证了抽取出的所有数据都能发送到备份端。数据传输过程中支持128位加密和数据压缩功能。
Oracle 公司的GoldenGate产品,可以在异构的IT基础结构之间实现大量数据的秒一级的数据捕捉、转换和投递。目前最新版本为V11.1.1.1.0。
GoldenGate可以支持几乎所有常用操作系统如和数据库平台,如下表所示:
操作系统 4
数据库 MS NT, 2000, XP, Linux, Sun Solaris, HP-UX, IBM AIX, HP NonStop, TRU64, IBM z/OS,OS/390
Oracle, DB2, MS SQL Server, MySQL, Enscribe, SQL/MP, SQL/MX, Sybase, Teradata, 其他ODBC 兼容数据库 2、文档约定和说明
为统一表示命令和便于查看,对格式作如下约定:
GG_HOME> 表示从操作系统命令行(cmd)进入GoldenGate安装路径下执行命令。 GGSCI> 表示在GoldenGate命令环境中执行命令。 SQL> 表示在数据库下执行SQL语句 /***
***/ 表示配置文件内容,/***不包含在内。 < > 表示自定义参数,如自定义表名
以下示例中若无特殊说明,GoldenGate使用的版本主要为11.1,部分使用10.4版本,除部分新特性,两者基本无差别;GoldenGate命令行中的操作均是在mgr主进程running时进行,当然,GoldenGate安装部分除外。
补充说明:
该文档主要介绍GoldenGate基本使用、GoldenGate的各类解决方案,以及以往本人在使用测试中总结的经验,文中的例子和执行的命令都是参照官方文档并亲自测试执行过。但因个人能力所限,错漏之处再所难免,文档中也不可能覆盖GoldenGate的方方面面。而且,因为GoldenGate本身提供了大量的参数,也不可能在这里一一列举,本文档中只举例了常用的一些参数命令,关于各个参数的具体使用语法和作用,还请参照官方文档《Oracle GoldeGate Reference Guide》。
3、GoldenGate软件安装
5
在不同的操作系统和平台上安装GoldenGate,需要在官网下载对应的版本。32位系统