当前位置: 首页 > MySQL数据库

怎么搭建OGG 12c MySQL to MySQL

时间:2026-01-28 14:10:45

安装包下载
下载最新的OGG FOR MySQL,这里使用的是
ggs_121210_Linux_x64_MySQL_64bit.zip 
官方下载地址:
http://www.oracle.com/technetwork/cn/middleware/goldengate/downloads/index.html

source和target端的OGG安装
创建OGG主目录
mkdir /ogg
解压安装包,会得到一个tar文件
unzip ggs_121210_Linux_x64_MySQL_64bit.zip 
将tar文件移至OHGG主目录,并解压即可
mv ggs_Linux_x64_MySQL_64bit.tar /ogg/
tar xvf ggs_Linux_x64_MySQL_64bit.tar 
修改环境变量
vi ~/.bash_profile
加入如下三个变量
export GGHOME=/ogg
export PATH=$PATH:$GGHOME
export LD_LIBRARY_PATH=/ogg:$LD_LIBRARY_PATH

登入OGG创建OGG的相关目录
[root@20_138-Mysql_Test1 ogg]# ./ggsci 
Oracle GoldenGate Command Interpreter FOR MySQL
VERSION 12.1.2.1.0 OGGCORE_12.1.2.1.0_PLATFORMS_140920.0203
Linux, x64, 64BIT (optimized), MySQL Enterprise ON Sep 20 2014 03:43:22
Operating system CHARACTER SET IDENTIFIED AS UTF-8.
Copyright (C) 1995, 2014, Oracle AND/OR its affiliates. ALL rights reserved.

GGSCI (20_138-Mysql_Test1) 1> CREATE subdirs
Creating subdirectories under current DIRECTORY /ogg
Parameter files                /ogg/dirprm: already EXISTS
Report files                   /ogg/dirrpt: created
Checkpoint files               /ogg/dirchk: created
PROCESS STATUS files           /ogg/dirpcs: created
SQL script files               /ogg/dirsql: created
DATABASE definitions files     /ogg/dirdef: created
EXTRACT DATA files             /ogg/dirdat: created
TEMPORARY files                /ogg/dirtmp: created
Credential store files         /ogg/dircrd: created
Masterkey wallet files         /ogg/dirwlt: created
Dump files                     /ogg/dirdmp: created

配置MGR
GGSCI (20_138-Mysql_Test1) 2> dit params mgr
PORT 7809

配置SOURCE端
GGSCI (20_138-Mysql_Test1) 4> dblogin sourcedb oggtest@localhost:3306,userid root,PASSWORD test123
Successfully logged INTO database.
GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 4> ADD EXTRACT e1,tranlog,BEGIN NOW
EXTRACT added.

GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 6> ADD exttrail /ogg/dirdat/e1,EXTRACT e1
EXTTRAIL added.

GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 7> edit params e1
EXTRACT e1
setenv (MYSQL_HOME="/var/lib/mysql")
tranlogoptions altlogdest /var/lib/mysql/mysql-bin.index
sourcedb oggtest@localhost:3306,userid root,PASSWORD test123
exttrail /ogg/dirdat/e1
dynamicresolution
gettruncates
TABLE oggtest.*;

GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 20> ADD EXTRACT p1,exttrailsource /ogg/dirdat/e1
EXTRACT added.

GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 21> ADD rmttrail /ogg/dirdat/r1,EXTRACT p1
RMTTRAIL added.

GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 22> edit param p1
EXTRACT p1
rmthost 192.168.20.139,mgrport 7809
rmttrail /ogg/dirdat/r1
passthru
gettruncates
TABLE oggtest.*;

配置TARGET端
GGSCI (20_139-Mysql_Test2) 3> dblogin sourcedb oggtest@localhost:3306,userid root,PASSWORD work123
Successfully logged INTO database.

GGSCI (20_139-Mysql_Test2 DBLOGIN AS root) 4> ADD checkpointtable oggtest.checkpoint
Successfully created checkpoint TABLE oggtest.checkpoint.

GGSCI (20_139-Mysql_Test2 DBLOGIN AS root) 5> ADD replicat r1,exttrail /ogg/dirdat/r1,checkpointtable oggtest.checkpoint
REPLICAT added.

GGSCI (20_139-Mysql_Test2 DBLOGIN AS root) 5> edit params r1
replicat r1
dboptions HOST localhost,connectionport 3306
targetdb oggtest,userid root,PASSWORD test123
assumetargetdefs
DISCARDFILE /ogg/dirrpt/r1.dsc,append,megabytes 50
MAP oggtest.*,target oggtest.*;

初始化数据 
主库master-data方式导出oggtest库,该方式会记录导出时的log_file 信息
mysqldump -uroot -p --master-DATA oggtest > oggtest.sql

打开oggtest.sql 找到下面内容,记录下log_file和log_pos
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000003', MASTER_LOG_POS=5054;

修改extract e1 从导出的时的binlog开始抽取
GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 54> ALTER EXTRACT e1,VAM,lognum 3,logpos 5054
EXTRACT altered.

开启同步
开启抽取进程
GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 59> START e1
Sending START request TO MANAGER ...
EXTRACT E1 STARTING
开启投递进程
GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 59> START P1
Sending START request TO MANAGER ...
EXTRACT P1 STARTING

target端开启应用进程
GGSCI (20_139-Mysql_Test2 DBLOGIN AS root) 5> START  r1
Sending START request TO MANAGER ...
EXTRACT R1 STARTING

观察进程状态
SOURCE端
GGSCI (20_138-Mysql_Test1 DBLOGIN AS root) 63> info ALL
Program     STATUS      GROUP       Lag AT Chkpt  TIME Since Chkpt

MANAGER     RUNNING                                           
EXTRACT     RUNNING     E1          00:00:00      00:00:03    
EXTRACT     RUNNING     P1          00:00:00      00:00:07    

TARGET端
GGSCI (20_139-Mysql_Test2 DBLOGIN AS root) 40> info ALL
Program     STATUS      GROUP       Lag AT Chkpt  TIME Since Chkpt
MANAGER     RUNNING                                           
REPLICAT    RUNNING     R1          00:00:00      00:00:09    
主库插入数据,观察ogg日志信息,备库查看是否同步,查错拍错


上一篇:怎么解决Mysql中的Last_SQL_Error: 1594报错问题
下一篇:怎么实现mysql 5.7主主同步
mysql ogg
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素