点击蓝字 阅读更多干货
OGG安装
环境介绍,为了节省资源OGG我选择和原库安装在了同一台服务器
软件版本 | IP地址 |
OGG21.3 | 192.168.2.251 |
Mysql8.0.11 | 192.168.2.251 |
Mysql8.0.11 | 192.168.2.252 |
1.1 解压ogg的安装包
上传并解压mysql ogg安装包,无需安装解压即可使用
# mkdir /ogg# unzip 213000_ggs_Linux_x64_MySQL_64bit.zip# tar -xvf ggs_Linux_x64_MySQL_64bit.tar
1.2 Mysql数据库配置
源库配置
OGG21C可以使用基于日志的DDL复制,要求添binlog_row_metadata为full模式才可以实现
# vi /etc/my.cnf[mysqld]datadir=/usr/local/mysql/databasedir=/usr/local/mysqlsocket=/tmp/mysql.sockuser=mysqlport=3306character-set-server=utf8mb4symbolic-links=0server_id = 1log_bin = mysql-binexpire_logs_days = 1binlog_format = rowbinlog_row_metadata=full[mysqld_safe]log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid
目标库配置
[mysqld]datadir=/usr/local/mysql/databasedir=/usr/local/mysqlsocket=/tmp/mysql.sockuser=mysqlport=3306character-set-server=utf8mb4symbolic-links=0server_id = 2log_bin = mysql-binexpire_logs_days = 1binlog_format = rowbinlog_row_metadata=full[mysqld_safe]log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid
主备数据库创建同步用户并附权
CREATE USER 'ogg'@'%' IDENTIFIED BY 'Sandata@123';GRANT ALL PRIVILEGES ON *.* TO 'ogg'@'%' WITH GRANT OPTION;FLUSH PRIVILEGES;
1.3 OGG配置
在21C的OGG中ogg可以单独部署并不需要每台服务器都安装,只要网络可达即可
[root@mysql ogg]# ./ggsciOracle GoldenGate Command Interpreter for MySQLVersion 21.3.0.0.0 OGGCORE_21.3.0.0.0_PLATFORMS_210728.1047Oracle Linux 7, x64, 64bit (optimized), MySQL on Jul 28 2021 18:17:46Operating system character set identified as UTF-8.Copyright (C) 1995, 2021, Oracle and/or its affiliates. All rights reserved.GGSCI (mysql) 1> CREATE SUBDIRSCreating subdirectories under current directory /oggParameter file /ogg/dirprm: created.Report file /ogg/dirrpt: created.Checkpoint file /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.Master encryption key wallet files /ogg/dirwlt: created.Dump files /ogg/dirdmp: created.
配置mgr进程
GGSCI (mysql) 36> edit param mgrPORT 17809DYNAMICPORTLIST 17810-17909AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 3
配置EXTRACT进程
GGSCI (mysql) 38> edit param EXM8extract exm8sourcedb wutong@192.168.2.251:3306, userid ogg, password Sandata@123tranLogOptions altlogDest REMOTEddl include mappedexttrail ./dirdat/m8table wutong.*;GGSCI (mysql) 39> add ext exm8, tranlog, begin nowGGSCI (mysql) 40> add exttrail ./dirdat/m8, ext exm8
配置REPLICAT进程,在21C的版本中已经不用配置pump进程
GGSCI (mysql) 2> edit param REP252replicat rep252targetdb wutong@192.168.2.252:3306, userid ogg, password Sandata@123DDLERROR DEFAULT IGNORE RETRYOPmap wutong.*, target wutong.*;
启动所有进程
GGSCI (mysql) 3> info allProgram Status Group Lag at Chkpt Time Since ChkptMANAGER RUNNINGEXTRACT RUNNING EXM8 00:00:00 00:00:08REPLICAT RUNNING REP252 00:00:00 00:00:00
1.4 DDL、DML测试
主库mysql> use wutong;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedmysql> show tables;+------------------+| Tables_in_wutong |+------------------+| test2 |+------------------+1 row in set (0.00 sec)目标库mysql> use wutong;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedmysql> show tables;+------------------+| Tables_in_wutong |+------------------+| test2 |+------------------+1 row in set (0.00 sec)主库mysql> create table sandata (id int,name varchar(20));Query OK, 0 rows affected (0.07 sec)mysql> insert into sandata values (1,'wutong');Query OK, 1 row affected (0.04 sec)mysql> select * from sandata-> ;+------+--------+| id | name |+------+--------+| 1 | wutong |+------+--------+1 row in set (0.00 sec)目标库mysql> show tables;+------------------+| Tables_in_wutong |+------------------+| test2 |+------------------+1 row in set (0.00 sec)mysql> show tables;+------------------+| Tables_in_wutong |+------------------+| sandata || test2 |+------------------+2 rows in set (0.00 sec)mysql> select * from sandata;+------+--------+| id | name |+------+--------+| 1 | wutong |+------+--------+1 row in set (0.00 sec)
参考文档oracle官方手册
https://docs.oracle.com/en/middleware/goldengate/core/21.3/gghdb/using-oracle-goldengate-mysql.html

往期推荐 ●●
// 1
// 2
// 3
// 4
文章转载自 晟数学苑,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




