我的编程空间,编程开发者的网络收藏夹
学习永远不晚

【goldengate】官方文档笔记三 Oracle GoldenGate 实时报表

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

【goldengate】官方文档笔记三 Oracle GoldenGate 实时报表

这篇文档循序渐进的讲述了OGG在适时复制的几种配置方案。从最基本的配置开始讲起,逐渐加入新的进程,加入新的策略,配置也随之改变。下面从最基础的配置说起。

报表配置
一对一复制是OGG最基本的配置方案:从源端数据库到目标数据库复制数据。在目标端从事报表和分析工作,实现OLTP和OLAP分离。

创建一个标准的报表配置
标准的OGG配置是一个提取组(Extract group)将捕获的数据通过TCP/IP发送给目标系统的trail文件中,复制组(Relicat group)从trail中读取数据,执行sql语句重演DML和DDL语句,实现数据的同步复制。

SOURCEdb ---> EXTRACT ---> TCP/IP ---> RMTTRAIL ---> REPLICAT ---> TARGETdb

源端系统
配置管理进程(Manager process)
1,在源端配置管理进程,参见笔 【goldengate】官方文档笔记一
http://blog.itpub.net/29047826/viewspace-1249506/

配置提取进程组(Extract group)
2,在源端,使用ADD EXTRACT 命令来创建一个提取组(Extract group),取名为ext
ADD EXTRACT <ext>, {TRANLOG | INTEGRATED TRANLOG}, BEGIN <time> [, THREADS <n>]

3,在源端,使用ADD RMTTRAIL命令来在目标系统上指定目标主机的trail文件(remote trail)。参数EXTRACT将trail文件和提取组向关联。
ADD RMTTRAIL <remote_trail>, EXTRACT <ext>

4,在源端,使用EDIT PARAMS命令为提取组(Extract group)创建参数文件。
-- 为提取组指定名称 EXTRACT <ext>
-- OGG管理用户登录数据的用户名和密码
[SOURCEDB <dsn_1>][, USERID <user>[, PASSWORD <pw> [<encryption options>]]
-- 指定目标系统的IP地址,端口号和加密方式
RMTHOST <target>, MGRPORT <portnumber>, ENCRYPT <encryption options>
-- 指定远程trail和加密方式
ENCRYPTTRAIL [<encryption options>] RMTTRAIL <remote_trail>
-- 指定要捕获的表 TABLE <owner>.<table>;

目标端系统
创建管理进程
5,在源端配置管理进程,参见笔 【goldengate】官方文档笔记一
http://blog.itpub.net/29047826/viewspace-1249506/

6,在管理进程(Manager process)参数文件,使用PURGEOLDEXTRACTS参数控制来自源端trail的删除工作。

配置复制组(Replicat group)
7,在目标端,创建复制检查点表(Replicat checkpoint table)。

8,在目标端,使用ADD REPLICAT命令来创建复制组(Relicate group)。使用EXTTRAIL参数将复制组(Replicate group)和remote trail文件相关联。告诉复制进程从哪里获取文件。
ADD REPLICAT <rep>, EXTTRAIL <remote_trail>, BEGIN <time>

9,在目标端,使用EDIT PARAMS命令来创建复制组(Replicat group)参数文件。
-- 为Replicat group指定名称 REPLICAT <rep> -- State whether or not source and target definitions are identical: SOURCEDEFS <full_pathname> | ASSUMETARGETDEFS -- OGG管理用户登录数据库的用户名和密码 [TARGETDB <dsn_2>][, USERID <user>][, PASSWORD <pw> [<encryption options>]] -- Specify error handling rules: -- Specify decryption if trail is encrypted: DECRYPTTRAIL <encryption options> REPERROR (<error>, <response>) -- 关联源库和目标库的表名称 MAP <owner>.<table>, TARGET <owner>.<table>[, DEF <template name>]



添加投递进程data pump

在刚才最基础配置完成后,我们可以再完善一下网络传输上的可靠性。在提取进程(Extract)和TCP/IP网络连接之间加入一个进程,datapump。给它起一个贴切的中文名“投递进程”。投递进程也是提取进程中的一种,可以称为二次提取进程。它在源端的trail中读取信息,通过TCP/IP投递(发送)到目标端的trail文件中。投递进程虽然不是必须配置的,但是为了系统的性能和可靠性建议配置。通过下面的简图,可以看下投递进程datapump所处的位置。

SOURCEdb ---> EXTRACT ---> DataPump ---> TCP/IP ---> RMTTRAIL ---> REPLICAT ---> TARGETdb

配置投递进程组(data pump Extract group)
在源端,使用ADD EXTRACT命令来创建一个投递进程组,指令如下:
ADD EXTRAIL <pump>, EXTTRAILSOURCE <local_trail>, BEGIN <time>

EXTTRAILSOURCE:该参数指的是源端trail文件路径,投递进程从该路径读取trail后发送给目标端

在源端,使用ADD RMTTRAIL命令来指定在目标端将要创建的remote trail。
ADD RMTTRAIL <remote_trail>, EXTRACT <pump>

EXTRACT: 该参数将源端的投递进程(data pump)与目标端的trail相连接。

总结一下上面的内容:
新增加的这个投递进程是一个搬运工,在源端工作。它通过EXTTRAILSOURCE找到本地的trail文件,读取该文件,在通过RMTTRAIL参数找到远程trail文件路径,投递过去。

使用EDIT PARAMS命令在源端为投递进程创建参数文件
-- 指定投递进程组:EXTRACT <pump>-- 指定OGG管理用户登录用户名和口令:[SOURCEDB <dsn_1>][, USERID <user>][, PASSWORD <pw>

[<加密选项>]]
-- 如果输入的trail被加密了,请指定:
DECRYPTTRAIL <加密选项>
-- 指定目标系统的主机名和ip地址
-- 通过TCP/IP传递数据的加密方式:
RMTHOST <target>, MGRPORT <portnumber>, ENCRYPT <encryption options>
-- 指定目标端trail文件的加密方式[<encryption options>]
RMTTRAIL <remote_trail>
-- 指定捕获对象:
TABLE <owner>.<table>;


当源端数据库与目标数据库不在一个网络中,可以在一个中介系统里创建投递进程,该进程在整个部署中成为一个二传手。
源端数据库的投递进程读取本local trail后投递(写到)到中介系统中的trail,中介系统中的投递进程(二传手)读取中介系统中的trail投递到目标端。

在配置中需要修改的地方如下:
在源端的投递进程参数中需要将RMTHOST的IP设置为中介地址,RMTTRAIL需要设置为中介trial路径

在中介系统中需要配置如下内容:
1,配置管理进程Manager process,方法同源库相同。
2,在Manager参数文件中使用PURGEOLDEXTRACTS来控制trail删除策略
3,配置投递进程组,取名为pump_2
ADD EXTRACT <pump_2>, EXTTRAILSOURCE <local_trail_1>, BEGIN <time>

EXTTRAILSOURCE:该参数指定中介系统中trail文件路径

4,使用ADD RMTTRAIL指定目标数据库trail位置
ADD RMTTRAIL <remote_trail_2>, EXTRACT <pump_2>

EXTRACT:该参数指明刚刚创建的“中介投递进程”将数据写入目标数据库的trail文件。

下面看看投递进程的配置文件
-- Identify the data pump group:
EXTRACT <pump_2>
-- Note that no database login parameters are required in this case.
-- State whether or not source and target definitions are identical: SOURCEDEFS <full_pathname> | ASSUMETARGETDEFS
-- Specify the target definitions file if SOURCEDEFS was used: TARGETDEFS <full_pathname>
-- Specify decryption if input trail is encrypted:
DECRYPTTRAIL <encryption options>
-- Specify the name or IP address of the target system
-- and optional encryption of data over TCP/IP:
RMTHOST <target_2>, MGRPORT <portnumber>, ENCRYPT <encryption options> -- Specify the remote trail and encryption options on the target system: ENCRYPTTRAIL [<encryption options>]
RMTTRAIL <remote_trail_2>
-- Allow mapping, filtering, conversion or pass data through as-is; [PASSTHRU | NOPASSTHRU]
-- Specify tables to be captured:
TABLE <owner>.<table>;

文档最后还有一部分是级联配置,也就是双向复制,就不在此列出了。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

【goldengate】官方文档笔记三 Oracle GoldenGate 实时报表

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

目录