OGG_GoldenGate数据迁移三进程Extract / Dump / Relicat(案例)

简介: 2014-03-04 Created By BaoXinjian 一、摘要 1.OGG是数据同步软件,或者说是逻辑复制软件,其竞争对手有IBM CDC,DELL shareplex,DSG,DDS等等。

2014-03-04 Created By BaoXinjian

一、摘要


1.OGG是数据同步软件,或者说是逻辑复制软件,其竞争对手有IBM CDC,DELL shareplex,DSG,DDS等等。

2.OGG软件是需要安装在操作系统上的,Oracle DB软件没有自带OGG软件(至少目前是这样的)

3.OGG软件有三大进程(说四大进程也行):

三大进程:源头抽取进程、源头传输进程、目的端应用进程(即:复制进程)

四大进程:源头抽取进程、源头传输进程、目的端server进程(负责在目的端写入trail文件)、目的端应用进程(即:复制进程)

4.OGG软件有两种trail file

源头的trail file:由源头抽取进程写入。

目的端的trail file: 源头传输进程传输到目的端,由目的端的server 进程写入目的端操作系统的指定路径下。

5.OGG软件中三大进程都有自己的checkpoint(即:检查点,用来记录每种进程读取到什么位置了,写入到什么位置了)

源头抽取进程Extract:有读取检查点 和写入检查点

源头传输进程Dump:有读取检查点 和写入检查点

目的端应用进程Replicat:有读取检查点

6.OGG软件三大进程处理trail file的过程:

源头抽取进程Extract:读取oracle redo log(假设源头数据库是oracle),结合抽取进程的参数文件,将redo log中的内容变为OGG自有格式的文件(即trail file),并写入到源头操作系统的指定路径下

源头传输进程Dump:读取“源头抽取进程写入的trail file”,结合传输进程的参数文件,发送需要同步的数据到目的端,在目的端是由server 进程负责写入。

目的端应用进程Replicat:读取目的端操作系统的指定路径下的trail file,结合应用进程的参数文件,形成sql语句,在目的端db上执行这些sql语句。

 

二、Extract Process


创建Extract Process

Step1. 添加extract程序

GGSCI (gavinprod.com) 51> add extract ext2, tranlog, begin now EXTRACT added.

Step2. 定义extract目录

GGSCI (gavinprod.com) 52> add exttrail /opt/oracle/ggate/dirdat/ld, extract ext2 EXTTRAIL added.

Step3. 定义extract参数

edit params ext1

GGSCI (gavinprod.com) 19> edit params EXT2
extract ext2
userid ggate@gavinprod, password oracle exttrail /opt/oracle/ggate/dirdat/ld ddl include mapped objname source_prod.*; table source_prod.*;

 

三、Dump Process


创建Dump Process

Step1. 添加dump程序

GGSCI (gavinprod.com) 60> add extract dmp2,exttrailsource /opt/oracle/ggate/dirdat/ld EXTRACT added.

Step2. 定义dump目录

GGSCI (gavinprod.com) 62> add rmttrail /opt/oracle/ggate/dirdat/ld, extract dmp2 RMTTRAIL added.

Step3. 定义dump参数

复制代码
GGSCI (gavinprod.com) 71> view params DMP2

extract dmp2
userid ggate@gavinprod, password oracle rmthost odellprod.com, mgrport 7809 rmttrail /opt/oracle/ggate/dirdat/lt passthru table source_prod.*;
复制代码

 

四、Replicat Process


创建Replicat Process

Step1. 添加replicat程序

GGSCI (odellprod.com) 8> add replicat rep2, exttrail /opt/oracle/ggate/dirdat/ld, checkpointtable ggate.checkpoint REPLICAT added.

Step2. 定义replicat参数

复制代码
GGSCI (odellprod.com) 11> view params REP2

replicat rep2
ASSUMETARGETDEFS
userid ggate@odellprod,password oracle discardfile /opt/oracle/ggate/dirdat/rep2_discard.txt, append, megabytes 10 map source_prod.*, target target_prod.*;
复制代码

 

五、测试


1. 在源数据端,创建测试数据

复制代码
CREATE TABLE source_prod.bxj_test_ogg_dump
(
   test_date          DATE,
   test_description   VARCHAR2 (100) ); INSERT INTO source_prod.bxj_test_ogg_dump VALUES (sysdate,'test goldendate data transfer by extract/dump/replicat');
复制代码

2. Source Database,进程和文件

复制代码
GGSCI (gavinprod.com) 17> info all

Program     Status      Group Lag at Chkpt Time Since Chkpt MANAGER RUNNING EXTRACT RUNNING DMP2 00:00:00 00:00:07 EXTRACT RUNNING EXT1 00:00:00 00:00:08 EXTRACT RUNNING EXT2 00:00:00 00:00:06
复制代码

2. Target Database,进程和文件 

复制代码
GGSCI (odellprod.com) 6> info all

Program     Status      Group Lag at Chkpt Time Since Chkpt MANAGER RUNNING REPLICAT RUNNING REP1 00:00:00 00:00:03 REPLICAT RUNNING REP2 00:00:00 00:00:03 
复制代码

3. Checkpoint表

 

Thanks and Regards

参考:shined - http://www.cnblogs.com/shined/archive/2012/07/12/2587648.html

参考:msdnchina - http://blog.csdn.net/msdnchina/article/details/38347285

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
7月前
|
Windows
「渗透技巧」利用Fork进程来Dump内存
「渗透技巧」利用Fork进程来Dump内存
|
10月前
Echarts实战案例代码(19):利用visualMap视觉映射组件制作五色玫瑰工作进程图
Echarts实战案例代码(19):利用visualMap视觉映射组件制作五色玫瑰工作进程图
157 0
|
6月前
|
存储 NoSQL Linux
【Linux】进程信号中的 core dump 标记位
【Linux】进程信号中的 core dump 标记位
|
10月前
|
缓存 并行计算 算法
Python多线程与多进程教程:全面解析、代码案例与优化技巧
Python多线程与多进程教程:全面解析、代码案例与优化技巧
348 0
|
11月前
|
Unix Shell Linux
Linux 守护进程(附有案例代码)
Linux 守护进程(附有案例代码)
|
11月前
|
Linux
进程间通信——信号原理及详解(附有案例代码)
进程间通信——信号原理及详解(附有案例代码)
进程间通信——内存映射原理及详解(附有案例代码)
进程间通信——内存映射原理及详解(附有案例代码)
进程间通信——有名管道原理及详解(附有案例代码)
进程间通信——有名管道原理及详解(附有案例代码)
|
11月前
|
存储 Unix Shell
进程间通信——匿名管道原理及详解(附有案例代码)
进程间通信——匿名管道原理及详解(附有案例代码)
|
11月前
|
Unix Linux
Linux 的父进程和子进程的执行情况(附有案例代码)
Linux 的父进程和子进程的执行情况(附有案例代码)

相关实验场景

更多