22. Performing an initial load using GoldenGate

简单说明:

本篇博文是关于使用OGG做源库到目标库的初始化数据同步方法的步骤梳理
具体方法参见后续几篇博文

使用OGG初始化同步数据,非使用数据泵/RMAN的初始化数据同步的准备工作:

1,抽取和发送进程已配置启动,应用进程配置完成
2,在初始化数据同步的时候关闭DDL复制
3,在初始化数据同步之前,目标库清空被初始化同步的表的数据
4,需要在目标环境删除所有的索引,禁用所有的约束
5,在应用进程配置文件中添加HANDLECOLLISIONS参数
   该参数具有在执行update时发现目标库缺失数据,则转化成insert
   执行delete时,发现目标库缺失数据则忽略等等的功能
6,需要将初始化同步分裂成多组进程来优化性能

操作步骤指引:

1,配置启动源端抽取和发送进程,使用参数HANDLECOLLISSIONS配置目标端应用进程
2,依据库的容量选择一个OGG的初始化同步方法,这些方法参见后续博文
3,配置初始化同步
4,将原库表结构复制到目标库
5,启动初始化同步进程
6,如果需要复制sequence,则要在源库刷新
7,验证初始化同步完成,所有的数据复制到了目标库中
8,启用约束,创建索引
9,根据需求启动DDL复制
10,初始化数据同步完成时,验证所有的数据都被应用程序复制
    然后关闭应用程序,去除HANDLECOLLISIONS参数,重新启动他

OGG初始化同步方法简述:

初始化同步方法大体可以分为两类:基于OGG的和非OGG的

在源端,有两个抽取进程设置:
一个用于初始化同步的抽取数据,并将其发送到目标端
第二个用于初始化数据同步开始之后抽取所有的变化,并将其发送到目标端
在目标端,第二个设置抽取的变化会在初始化同步后应用
你可以执行非OGG方法所不支持的更多的事务
OGG提供了诸如HANDLECOLLISSIONS等参数用于解决初始化同步时的数据冲突

如果你的源库和目标库处于不同平台,可以使用一些非OGG的方法初始化同步数据
但这些方法不允许表级/列级的任何事务
OGG的某些方法支持这些特性,甚至是多个不同数据库混杂的环境中

OGG初始化同步方法简介:

Extract file to the Replicat method

该方法是简单的初始化工作的主要方法,用于数据库较小的情景
该方法中,源端的抽取进程从库中抽取数据,并写入到目标端的trail文件中
目标端的应用进程应用这些事务
该方法抽取进程文件的限制为2GB,因此只适用于小数据量的初始化同步

Trail to the Replicat method

该方法在源端配置一个初始化数据的抽取进程
该进程功能是向目标端写trail文件
在该抽取进程的配置文件中配置trail文件的大小和数量
该方法的优点是可以初始化同步大于2GB的数据库

File to the database utility method

该方法在源端配置一个用于初始化同步的抽取进程
该方没有配置应用进程,因此需要停掉所有的事务
该抽取进程将抽取的数据写成以下的某一个格式:
  ASCII、逗号分隔的数据、XML或者SQL
在目标端,通过数据库组件读取这些文件并将数据写入到库中
该方法的优点是能够将数据加载到其他类型的库中
很多种类的库支持从这些类型的数据文件中加载数据

GoldenGate direct load method

该方法是最灵活的方法
该方法在源端配置一个抽取进程直接和目标端应用进程通讯
该抽取进程将抽取的数据传输给应用进程
应用进程使用SQL调用来应用接收到的数据到目标库
由于没有复杂的外部结构,该方法可以用于多种类型的库之间的数据装载
你可以执行OGG支持的所有事务
该方法的缺点是不支持LOB类型、LONG类型、用户自定义类型和其他超过4KB大小的数据类型
同时该方法比其他的OGG初始化方法要慢

Direct bulk load to SQL loader method

该方法在源端配置一个初始化抽取进程
该进程和目标端的初始化应用进程进行通讯
应用进程和目标端的SQL * Loader进行通讯
然后SQL * Loader使用SQL解析直接路径装载数据到目标库
该方法的优点是使用速度较快的直接路径装载
该方法的缺点是目标端只支持Oracle数据库
因为SQL * Loader是Oracle的特有组件
该方法同时不支持加密数据、LOB或LONG类型数据和包含LOB的物化视图

[TOC]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值