使用GoldenGate实现MySQL到Oracle的数据实时同步

step 1: 配置mysql
修改配置文件my.ini
#for goldengate
log-bin = "C:/mysql/logbin/logbin.log"
binlog-format = ROW
log-bin-index = "C:\mysql\logindex"
binlog_cache_size=32m
max_binlog_cache_size=512m
max_binlog_size=512m

添加数据库用户ggs,具有DBA权限

step 2: 在mysql服务器上安装配置GoldenGate

创建mgr.prm
PORT 7809
DYNAMICPORTLIST  7840-7914
STARTUPVALIDATIONDELAY 5
PURGEOLDEXTRACTS C:\ogg\dirdat\*, USECHECKPOINTS, MINKEEPDAYS 7
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45

创建抽取进程参数ext1.prm
--ext1.prm
EXTRACT ext1
SOURCEDB [email protected]:3306, USERID ggs, PASSWORD 123
DISCARDROLLOVER ON FRIDAY
DISCARDFILE C:\ogg\dirrpt\ext1.dsc, APPEND, MEGABYTES 1024
WARNLONGTRANS 2h, CHECKINTERVAL 3m
REPORTCOUNT EVERY 30 MINUTES, RATE
EXTTRAIL C:\ogg\dirdat\ex
DYNAMICRESOLUTION
NUMFILES 5000
TABLE test.test1;

添加抽取进程ext1
ADD EXTRACT ext1, tranlog, begin now
ADD EXTTRAIL C:\ogg\dirrpt\ex, EXTRACT ext1, megabytes 100

创建传播进程参数dp1.prm
--dp1.prm
EXTRACT dp1
RMTHOST 172.27.35.28, MGRPORT 7809,COMPRESS
RMTTRAIL d:\ogg\dirdat\ex
PASSTHRU
NUMFILES 5000
DYNAMICRESOLUTION
TABLE test.*;

添加抽取进程dp1
ADD EXTRACT dp1, EXTTRAILSOURCE C:\ogg\dirdat\ex
ADD RMTTRAIL d:\ogg\dirdat\ex, EXTRACT dp1, MEGABYTES 100

step 3: 配置defgen
创建defgen参数
--defgen.prm
defsfile C:\ogg\dirdef\defgen.prm
sourcedb [email protected]:3306, userid ggs,password 123
table test.test1;

生成defgen文件
defgen paramfile C:\ogg\dirprm\defgen.prm

将C:\ogg\dirdef目录下的文件defgen.prm拷贝到目标端的相应目录下,即目录.\dirdef下。

step 4: Oracle环境准备
创建数据库用户
create tablespace ggs datafile ‘......‘ size 200m;
create user ggs identified by 123 default tablespace ggs;
grant dba to ggs;

step 5: 在Oracle服务器安装配置GoldenGate
创建mgr参数
--mgr.prm
PORT 7809
DYNAMICPORTLIST  7840-7914
STARTUPVALIDATIONDELAY 5
PURGEOLDEXTRACTS d:\ogg\dirdat\*, USECHECKPOINTS, MINKEEPDAYS 7
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45

创建复制进程参数rep1.prm
--rep1.prm
replicat rep1
 sourcedefs D:\ogg\dirdef\defgen.prm
 userid ggs,password ggs
 reperror default,discard
 discardfile D:\ogg\dirrpt\rep1.dsc,append,megabytes 50
 dynamicresolution
 map test.test1, target test.test1;

添加复制进程
dblogin userid ggs password 123
add checkpointtable chkpnttab
 add replicat rep1,exttrail D:\ogg\dirdat\ex, checkpointtable chkpnttab

时间: 2024-10-17 21:27:39

使用GoldenGate实现MySQL到Oracle的数据实时同步的相关文章

Goldengate 应用环境 mysql to oracle

前言 一个需求,mysql的某些表,实时同步至oracle,于是就产生了这篇文章,安装过程中,走了些弯路,原因是没太深刻理解,官方提供安装步骤所代表的意义. 环境 源端:mysql-server 5.5.39 , Goldengate for mysql 121210 , MySQL-client-5.5.28-1.linux2.6.x86_64.rpm , mysql-connector-odbc-5.2.7-1.el6.x86_64.rpm 目标端:oracle10g,linux Golde

Sqlserver2000连接Oracle11G数据库进行数据实时同步

 Sqlserver2000连接Oracle11G数据库进行数据实时同步 1,前提条件 已经有sqlserver2000环境,已经存在oracle11g环境,准备这两个数据库,建立各自的访问账号,两者之间需要ping通,telnet端口也要能通,目的是将sqlserver里面的数据自动同步到oracle数据库里面去.Sqlserver里面有链路服务器(linked server)可以实现. 2,在sqlserver上面建立odbc数据源 有2种方式:"Microsoft ODBC for Ora

sersync基于rsync+inotify实现数据实时同步

一.环境描述 需求:服务器A与服务器B为主备服务模式,需要保持文件一致性,现采用sersync基于rsync+inotify实现数据实时同步 主服务器A:192.168.1.23 从服务器B:192.168.1.243 实时同步/var/atlassian目录到从服务器. 二.实施 1.从服务器192.168.1.243 rsync服务搭建 1.1安装软件包 wget http://rsync.samba.org/ftp/rsync/src/rsync-3.1.1.tar.gz tar xf r

rsync + inotify 用来实现数据实时同步

一.简介 1.rsync 比其cp.tar备份的方法,rsync的优点是,安全性高.备份迅速.支持增量备份.只能做对实时性要求不高的数据备份,例如:备份文件服务到远端从服务器.在本地磁盘上做数据镜像等 增量备份:就是rsync同步数据时,需要扫描所有文件后进行比对,进行差量传输.但是对于大量文件达到千万量级别时,扫描所有文件是非常耗时的. 如果发生改变的只是其中的一小部分的话,这是非常低效的方式. rsync 不能实时的去监测,同步数据,虽然它可以通过 linux 守护进程的方式进行触发同步,两

rsync+inotify实现数据实时同步备份

在实际生产环境当中,我们总会遇见需要把一些重要数据进行备份,且随着应用系统规模的增大,对数据的安全性.可靠性.时效性要求还是比较高的, 因此我自己有在用rsync+inotify来实现数据实时同步备份,下面记录下操作步骤,以防日后自己忘记. 实验背景: 操作系统          IP         机器名        角色 CentOS 7.2       172.16.22.1     nginx01        数据源(服务器端) CentOS 7.2       172.16.22

rsync与inotify实现数据实时同步

Rsync与Inotify 单一的rsync只可以进行数据同步,单一的inotify只可以实时监控文件,两者结合使用刚好满足数据实时同步的需求,下面就用一个数据发布服务器和两个web服务器实例解析rsync+inotify实现实时同步. 数据发布服务器 192.168.1.5 (rsync+inotify) web服务器 192.168.1.6 192.168.1.7 (rsync) 首先在web服务器上部署rsync 192.168.1.6配置 [[email protected]~]# yu

Linux下Rsync+Inotify-tools实现数据实时同步

说明: 一.先安装好rsync的服务端和客户端: http://douya.blog.51cto.com/6173221/1573968 二.安装,使用inotify-tools,实时同步 1.查看服务器内核是否支持inotify ll /proc/sys/fs/inotify   #列出文件目录,出现下面的内容,说明服务器内核支持inotify -rw-r--r-- 1 root root 0 Mar  7 02:17 max_queued_events -rw-r--r-- 1 root r

centos 6.9使用Rsync+Inotify-tools实现数据实时同步

说明: 操作系统:CentOS 6.9 源服务器:192.168.1.222 备份服务器:192.168.1.1.233 目的:把源服务器上/backup目录实时同步到备份服务器的/backup目录下 一.在备份服务器安装Rsync服务端 1.关闭SELINUX vi /etc/selinux/config #编辑防火墙配置文件 #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 SELINUX=disabled #增加 :wq! #保存,退出

Linux下Rsync+sersync实现数据实时同步

inotify 的同步备份机制有着缺点,于是看了sersync同步,弥补了rsync的缺点.以下转自:http://www.osyunwei.com/archives/7447.html 前言: 一.为什么要用Rsync+sersync架构? 1.sersync是基于Inotify开发的,类似于Inotify-tools的工具 2.sersync可以记录下被监听目录中发生变化的(包括增加.删除.修改)具体某一个文件或某一个目录的名字,然后使用rsync同步的时候,只同步发生变化的这个文件或者这个