OGG的initial load和online change sync_congdiku5262的博客-程序员宅基地

Initial load

可分为几种:

除去第一种方法,其余均需要initial-load extractinitial-load replicat;在同步initial-load期间的change时,replicat都需要添加handlercollisions参数,并在同步完成后去除;

 

Loading data with a database utility

使用db copy utility创建target db,等copy完成启用change-sync replicat同步期间产生的change;此过程完成后开始正常的数据同步;

因为不需要initial-load extract/replicat,也无须为之配备参数文件

 

 

Loading data from file to replicat

使用initial-load extractsource table写入remote extract文件(canonical格式),由initial-load replicat将其加逐行载入数据库,因此效率较低;

大致步骤

1 启动sourcemanager进程:start manager

2 编辑initial-load extract参数文件:edit params

SOURCEISTABLE标明extractinitial load,直接从source table获取数据

SOURCEDB mydb, USERID ogg, PASSWORD

AACAAAAAAAAAAAJAUEUGODSCVGJEEIUGKJDJTFNDKEJFFFTC &

AES128, ENCRYPTKEY securekey1

RMTHOST ny4387, MGRPORT 7888, ENCRYPT AES 192 KEYNAME mykey –指定target hostmanager port

ENCRYPTTRAIL AES192, KEYNAME mykey1

RMTFILE /ggs/dirdat/initld, MEGABYTES 2, PURGE  --指定remote extract文件,不需要维护checkpoing

TABLE hr.*;

TABLE sales.*;

3 编辑target initial-load repicat的参数文件:edit params

SPECIALRUNreplicat设定为一次性运行,不需要checkpoint

END RUNTIMEload完成后终结replicat

TARGETDB mydb, USERID ogg, PASSWORD

AACAAAAAAAAAAAJAUEUGODSCVGJEEIUGKJDJTFNDKEJFFFTC &

AES128, ENCRYPTKEY securekey1

DECRYPTTRAIL AES192, KEYNAME mykey1

EXTFILE /ggs/dirdat/initld –声明由extract指定的rmtfile

SOURCEDEFS /ggs/dirdef/source_defs – source/target表结构不同时使用,def文件由defgen生成;如果表结构一致则使用assumetargetdefs

MAP hr.*, TARGET hr.*;

MAP sales.*, TARGET hr.*;

4 启动change extract进程:start extract

5 启动initial-load extract进程:$/.prm reportfile   --通过initial-load extract参数文件名启动,监控状态直至extraction完成

6 启动initial-load replicat进程:$/.prm reportfile --通过initial-load replicat参数文件启动,监控直至完成

7 启动change replicat进程:start replicat

8 监控change replicat状态:info replicat --直至应用完所有initial load产生的change,如果initial-load extract12:05结束,确保replicat应用到此时间点;

9 移除change replicathandlecollisions参数:send replicat , nohandlecollisions,然后更新repliat参数文件

 

 

Load data from file to database utility

使用initial-load extractsource table写入remote ASCII文件,通过db utility加载到target dbinitial-load replicat会生成run and control files辅助db utility;数据转换必须由initial-load extract执行;

大致步骤

1 启动sourcemanager进程:start manager

2 编辑initial-load extract参数文件:edit params

SOURCEISTABLE声明extractinitial-load

SOURCEDB mydb, USERID ogg, PASSWORD

AACAAAAAAAAAAAJAUEUGODSCVGJEEIUGKJDJTFNDKEJFFFTC &

AES128, ENCRYPTKEY securekey1

RMTHOST ny4387, MGRPORT 7888, ENCRYPT AES 192 KEYNAME mykey –指定target hostmanager port

ENCRYPTTRAIL AES192, KEYNAME mykey1

RMTFILE /ggs/dirdat/initld, MEGABYTES 2, PURGE –指定remote extract文件

FORMATASCII, SQLLOADER将输出格式化为ASCII文本,替代默认的canonical格式,可选项包括BCPSQLLOADER

TABLE hr.*;

TABLE sales.*;

3 编辑target initial-load repicat的参数文件:edit params

GENLOADFILES sqlldr.tpl  --生成run and control files,辅助db utility加载数据,该文件动态生成不可人工干预

USERID ogg, PASSWORD

AACAAAAAAAAAAAJAUEUGODSCVGJEEIUGKJDJTFNDKEJFFFTC &

AES128, ENCRYPTKEY securekey1

DECRYPTTRAIL AES192, KEYNAME mykey1

EXTFILE /ggs/dirdat/initld

SOURCEDEFS /ggs/dirdef/source_defs

MAP hr.*, TARGET hr.*;

MAP sales.*, TARGET hr.*;

4 启动change extract进程:start extract

5 启动initial-load extract进程:$/.prm reportfile   --通过initial-load extract参数文件名启动,监控状态直至extraction完成

6 启动initial-load replicat进程:$/.prm reportfile --通过initial-load replicat参数文件启动,监控直至完成

7 加载target db:通过步骤6生成的ASCII文本文件和run and control files,使用db utility将其加载至target db,监控直至完成

7 启动change replicat进程:start replicat

8 监控change replicat状态:info replicat --直至应用完所有initial load产生的change,如果initial-load extract12:05结束,确保replicat应用到此时间点;

9 移除change replicathandlecollisions参数:send replicat , nohandlecollisions,然后更新repliat参数文件

 

 

 

Load data with OGG direct load

使用initial-load extractsource table直接发送至initial-load replicat task(manager动态生成,不需要collector进程),由后者通过large block加载到target;不支持log/long/UDT/大于4K的数据字段;

Target端使用dynamicportlistreplicat分配port,加速查询和绑定过程;

大致步骤

1 启动sourcemanager进程:start manager

2 添加并编辑initial-load extract参数文件:add extract < initial-load extract name>, sourceistable/edit params

EXTRACT initext  --指定initial-load extract 进程名

SOURCEDB mydb, USERID ogg, PASSWORD

AACAAAAAAAAAAAJAUEUGODSCVGJEEIUGKJDJTFNDKEJFFFTC &

AES128, ENCRYPTKEY securekey1

RMTHOST ny4387, MGRPORT 7888, ENCRYPT AES 192 KEYNAME mykey

RMTTASK REPLICAT, GROUP initrep指导targetmanager动态启动一次性initial-load replicat

TABLE hr.*;

TABLE sales.*;

3 添加编辑target initial-load repicat的参数文件:add replicat initrep, specialran/edit params initrep

REPLICAT initrep 指定initial-load replicat task

TARGETDB mydb, USERID ogg, PASSWORD

AACAAAAAAAAAAAJAUEUGODSCVGJEEIUGKJDJTFNDKEJFFFTC &

AES128, ENCRYPTKEY securekey1

SOURCEDEFS /ggs/dirdef/source_defs

MAP hr.*, TARGET hr.*;

MAP sales.*, TARGET hr.*;

4 启动change extract进程:start extract

5 启动initial-load extract进程:start extract ,会自动启动initial-load replicat

6 监控initial-load进程,在target执行view report 直至完成

7 启动change replicat进程:start replicat

8 监控change replicat状态:info replicat --直至应用完所有initial load产生的change,如果initial-load extract12:05结束,确保replicat应用到此时间点;

9 移除change replicathandlecollisions参数:send replicat , nohandlecollisions,然后更新repliat参数文件

 

 

Load data with a direct bulk load to SQL*Loader

使用initial-load extractsource table发送给initial-load replicat,后者同SQL*Loader结合执行直接路径加载;

此方法只用于OracleSQL*Loader,不适合其他数据库;不支持lob/long类型;

1 启动sourcemanager进程:start manager

2 编辑initial-load extract参数文件:edit params

EXTRACT initext –指定initial-load extract进程名

SOURCEDB mydb, USERID ogg, PASSWORD

AACAAAAAAAAAAAJAUEUGODSCVGJEEIUGKJDJTFNDKEJFFFTC &

AES128, ENCRYPTKEY securekey1

RMTHOST ny4387, MGRPORT 7888, ENCRYPT AES 192 KEYNAME mykey

RMTTASK REPLICAT, GROUP initrep指导targetmanager动态启动initial-load replicat,为一次性任务

TABLE hr.*;

TABLE sales.*;

3 添加/编辑target initial-load repicat的参数文件:add replicat m, specialrun/edit params

REPLICAT initrep

USERID ogg, PASSWORD

AACAAAAAAAAAAAJAUEUGODSCVGJEEIUGKJDJTFNDKEJFFFTC &

AES128, ENCRYPTKEY securekey1

BULKLOAD –指导replicatoracle sql*loader接口协同工作

SOURCEDEFS /ggs/dirdef/source_defs

MAP hr.*, TARGET hr.*;

MAP sales.*, TARGET hr.*;

4 启动change extract进程:start extract

5 启动initial-load extract进程:start extract ,会自动启动initial-load replicat

6 监控initial-load进程,在target执行view report 直至完成

7 启动change replicat进程:start replicat

8 监控change replicat状态:info replicat --直至应用完所有initial load产生的change,如果initial-load extract12:05结束,确保replicat应用到此时间点;

9 移除change replicathandlecollisions参数:send replicat , nohandlecollisions,然后更新repliat参数文件

 

 

 

Online change sync

大致分为

创建checkpoint

创建extract

创建extract参数文件

创建trail

创建replicat

创建replicat参数文件

 

每个manager最多支持5000个并发extractreplicat组,可根据活跃程度为不同的表单独分配extract,每个extract单独对应一个data pumpsreplicat组;

 

Checkpoint

可被多个OGG instance共享,也可创建多个表,每个replicat组对应一个;

创建方式:

1

GLOBALS文件声明

每个通过add replicat新建的replicat组均可自动使用

编辑GLOBALS文件Edit params ./GLOBALS

添加参数 checkpointtabl .

通过GGSCI登陆数据库dblogin sourcedb , userid , password

执行add checkpointtabl .

 

2

创建replicat时声明

add replicat checkpointtable,覆盖GLOBALS文件;如果指定nodbcheckpoint,则使用checkpoint file

 

创建online extract group

ADD EXTRACT

{, } –指定数据源;tranlog—事务日志,integrated tranlog—integrated模式接受LCR,只用于oracleVAM—用于teradatavamtrailsource --指定VAM trailexttrailsource --指定本地trail

{, BEGIN } | {} –可选值:now—add extract时间点起,对data pump最好不要使用;--指定时间点

[, PASSIVE] –配合alias extract使用,当从target发起连接时用到

[, THREADS ]  --只在RAC下使用,指定redo线程数

[, PARAMS ]  --若其参数文件没有存储在dirprm子目录,则需显示声明

[, REPORT ] –若进程报告存于非dirrpt子目录,则需显示声明

[, DESC “”]

 

创建alias extract

ADD EXTRACT

, RMTHOST { | }

, {MGRPORT } | {PORT

[, RMTNAME ]  --指定passive extract

[, DESC “”]

 

创建trail

data pumpreplicat负责读取,teradata则需要VAM-sort extract

trail单独分配一个磁盘;

添加trail

ADD {RMTTRAIL | EXTTRAIL} , EXTRACT [, MEGABYTES ] –默认n100

 

创建online replicat

ADD REPLICAT , EXTTRAIL

[, BEGIN | , EXTSEQNO , EXTRBA ] –指定exttrail开始读取的文件号和相对块地址

[, CHECKPOINTTABLE ]

[, NODBCHECKPOINT]

[, PARAMS ]

[, REPORT ]

 

 

控制online process

启动

Start [extract|replicat]

可配置manager参数文件,autostart为自动启动,autorestart自动重启动

停止

Stop [extract|replicat]

强制关闭replicat stop replicat !

杀死

Kill [extract|replicat]

一次执行操作多个进程

ER

--可选命令为start/stop/kill

 

删除进程组

停止相应进程后,可将其删除但可同时保留参数文件,后续可重新添加同样组;

GGSCI登陆数据库,执行delete [extract|replicat]

 

http://docs.oracle.com/cd/E35209_01/doc.1121/e29397.pdf

 

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15480802/viewspace-760784/,如需转载,请注明出处,否则将追究法律责任。

user_pic_default.png
请登录后发表评论 登录
全部评论
<%=items[i].createtime%>

<%=items[i].content%>

<%if(items[i].items.items.length) { %>
<%for(var j=0;j
<%=items[i].items.items[j].createtime%> 回复

<%=items[i].items.items[j].username%>   回复   <%=items[i].items.items[j].tousername%><%=items[i].items.items[j].content%>

<%}%> <%if(items[i].items.total > 5) { %>
还有<%=items[i].items.total-5%>条评论 ) data-count=1 data-flag=true>点击查看
<%}%>
<%}%> <%}%>

转载于:http://blog.itpub.net/15480802/viewspace-760784/

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/congdiku5262/article/details/100417957

智能推荐

JAVA23种设计模式(2)-结构型模式7种_touch_world的博客-程序员宅基地

JAVA23种设计模式(2)-结构型模式7种把类结合在一起形成更大的结构适配器模式(adapter)一句话:将一个类的接口转换成另一种接口.让原本接口不兼容的类可以兼容这是平时比较常见的一种模式 正如名字一样,比如,手机充电器是链接220v的插座的,必须使用适配器将其转成5v输出,2A的usb通用接口给手机使用,手机中的电量肯定是来自于220v的插座,但是经过手机适配器的转化

攻防世界web高手进阶区 php_rce_Ant200的博客-程序员宅基地

工具火狐1.打开链接,观察到这是一个Think PHP V5 框架2.尝试输入index.php,发现页面没有变化,继续输入下一级文件(随便输入),发现爆出了版本5.0.203.查询相关版本的漏洞(百度或者github)都可以试试 、查询到的payload:?s=index/think\app/invokefunction&amp;function=call_user_func_array&amp;vars[0]=system&amp;vars[1][]=ls放进去尝试发现可

使有用计算机不注意卫生,对您有用的与电脑清洁相关的知识_王骁Albert的博客-程序员宅基地

一:清洁硬件电脑使用时间长后,灰尘等污物会在机身内、外部的积淀,这些因素都危害到电脑。所以,在平时或者一段时间都要对电脑进行清洁是非常有必要的。①清洁工具电脑维护不需要很复杂的工具,一般的除尘维护只需要准备十字螺丝刀、平口螺丝刀、油漆刷(或者油画笔,普通毛笔容易脱毛不宜使用)就可以了。如果要清洗软驱、光驱内部,还需要准备镜头拭纸、电吹风、无水酒精、脱脂棉球、钟表起子、镊子、皮老虎、回形针、钟表油(...

实现从bootstraptable拖拽数据到jquery ztree下_半颗心丶的博客-程序员宅基地_bootstraptable拖动

想先介绍一下要做这个功能的原因过程。之前做过一个项目实现的功能是页面左边是树,右边是列表。树作为文件夹目录,列表显示文件夹下的文件。而且树可以隐藏,只显示文件列表。做了一个frameset,来实现这个功能。 后来的项目也用到了这个功能,但是要实现文件的移动。经过百度找到了介绍可拖拽的方法(感谢他们的分享),但是在我这个项目中拖拽的时候无法跨frame拖拽,后来改为一个页面中不同的div实现了。上面是废话可以略过。=================...

微型计算机硬盘,微型计算机硬盘技术基础(第2版)_华天翼竹的博客-程序员宅基地

微型计算机硬盘技术基础(第2版)语音编辑锁定讨论上传视频《微型计算机硬盘技术基础(第2版)》是2003年高等教育出版社出版图书,作者是冯博琴、吴宁。书名微型计算机硬盘技术基础(第2版)作者类别图书&gt;计算机/网络&gt;硬件 外部设备 维修出版社高等教育出版社出版时间2003年05月定价¥36.40开本16 开装帧平装ISBN9787040288...

关于图像的插值运算_u010890209的博客-程序员宅基地

一. 图像缩放的双线性内插值算法的原理解析 图像的缩放很好理解,就是图像的放大和缩小。传统的绘画工具中,有一种叫做“放大尺”的绘画工具,画家常用它来放大图画。当然,在计算机上,我们不再需要用放大尺去放大或缩小图像了,把这个工作交给程序来完成就可以了。下面就来讲讲计算机怎么来放大缩小图象;在本文中,我们所说的图像都是指点阵图,也就是用一个像素矩阵来描述图像的方法,对于另一种图像:用函数来描述

随便推点

Spring Boot异常处理详解_阿奇XS的博客-程序员宅基地

在Spring MVC异常处理详解中,介绍了Spring MVC的异常处理体系,本文将讲解在此基础上Spring Boot为我们做了哪些工作。下图列出了Spring Boot中跟MVC异常处理相关的类。Spring Boot在启动过程中会根据当前环境进行AutoConfiguration,其中跟MVC错误处理相关的配置内容,在ErrorMvcAutoConfiguration这个类

springboot启动原理自动配置原理_月会的博客-程序员宅基地

文章目录1. SpringBoot自动加载原理首先看@SpringBootApplication注解@[email protected]@[email protected]({AutoConfigurationImportSelector.class})2.SpringApplication.run()创建SpringApplication实例run方法1. SpringBoot自动加载原

生成echarts雷达图并传到Server端生成图片_weixin_34178244的博客-程序员宅基地

2019独角兽企业重金招聘Python工程师标准&gt;&gt;&gt; ...

论文阅读:Background Activation Suppression for Weakly Supervised Object Localization_zhangst431的博客-程序员宅基地

论文题目:Background Activation Suppression for Weakly Supervised Object Localization论文下载:https://arxiv.org/abs/2112.00580源码地址:https://github.com/wpy1999/BAS摘要弱监督的目标检测即利用图像级的标签生成目标边界框(bounding box,简称bbox)的一种算法。作者介绍说最近在弱监督的目标检测领域引入了一种新的范式即基于前景预测图(FPM,foregro

【Linux学习笔记】01_Linux学习方法路线_呆萌钟的博客-程序员宅基地

转载声明:商业转载请联系作者获得授权,非商业转载请注明出处.原文来自  呆萌钟【Linux教程学习笔记】01.Linux学习方法路线 Linux课程内容介绍Linux学习方向Linux运维工程师 Linux嵌入式开发工程师 在Linux做各种程序开发 Linux的应用领域个人桌面应用领域 此领域是传统Linux应用最薄弱的环节,传统Linux由于界面简单、操作复杂...

[JavaScript] 3.JS 语句_吴士龙的博客-程序员宅基地

JavaScript 语句向浏览器发出的命令。语句的作用是告诉浏览器该做什么。JS的语句的学习是很关键的章节,与其代码的书写形式联系甚密,所以说这是很细节的,之所以拿出来单独来总结,是自己的代码习惯不太好,算是对自己的一个警示!

推荐文章

热门文章

相关标签