前言:
Oracle Goldengate 21版本虽然发布很长时间了,但是一直没有可用的软件下载。没想到第一个出来的会是MySQL版本的,令人惊喜的是竟然有MA架构的了。于是我赶紧把手里OGG19版本的环境都清理一遍,把OGGMA for MySQL 21.1安排上。
环境说明
这里准备了两个虚拟机,一个运行oracle,一个运行MySQL。这里会配置从Oracle往MySQL同步数据,以及从MySQL往Oracle同步数据的实验。
Oracle服务器
IP:192.168.56.51
数据库版本:Oracle 19.11
OGG版本:OGG MA for Oracle 19.1
ORACLE_SID=ORCL
服务名:PDB1,PDB2
PDB1用于配置从Oracle往MySQl同步数据的源端,PDB2用于MySQL往Oracle同步数据的目标端,
MySQL服务器
IP:192.168.56.52
数据库版本:MySQL 8.0.0.22
OGG版本: OGG MA for MySQL 21.1
数据库名:testdb
安装OGG MA for MySQL
[mysql@ogg-mysql Disk1]$ ./runInstaller 正在启动 Oracle Universal Installer... 检查临时空间: 必须大于 120 MB。 实际为 75062 MB 通过 检查交换空间: 必须大于 150 MB。 实际为 16379 MB 通过 检查监视器: 监视器配置至少必须显示 256 种颜色。 实际为 16777216 通过 准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2021-06-15_09-55-23PM. 请稍候...[mysql@ogg-mysql Disk1]$ ./runInstaller 正在启动 Oracle Universal Installer... 检查临时空间: 必须大于 120 MB。 实际为 75085 MB 通过 检查交换空间: 必须大于 150 MB。 实际为 16379 MB 通过 检查监视器: 监视器配置至少必须显示 256 种颜色。 实际为 16777216 通过 准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2021-06-15_09-56-36PM. 请稍候...`
[root@ogg-mysql ogg]# /ogg/oraInventory/orainstRoot.sh 更改权限/ogg/oraInventory. 添加组的读取和写入权限。 删除全局的读取, 写入和执行权限。 更改组名/ogg/oraInventory 到 mysql. 脚本的执行已完成。
配置OGGMA for MySQL 服务
[mysql@ogg-mysql Disk1]$ cd /ogg/oggma/bin [mysql@ogg-mysql bin]$ ls adminclient cachefiledump checkprm convprm distsrvr extract keygen oggca.sh orapki recvsrvr retrace adminsrvr certstore convchk defgen emsclnt ggcmd logdump oggerr pmsrvr replicat ServiceManager [mysql@ogg-mysql bin]$ ./oggca.sh
[root@ogg-mysql ogg]# /ogg/ogginst/sm/bin/registerServiceManager.sh Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved. ---------------------------------------------------- Oracle GoldenGate Install As Service Script ---------------------------------------------------- OGG_HOME=/ogg/oggma OGG_CONF_HOME=/ogg/ogginst/sm/etc/conf OGG_VAR_HOME=/ogg/ogginst/sm/var OGG_USER=mysql Running OracleGoldenGateInstall.sh... Created symlink from /etc/systemd/system/multi-user.target.wants/OracleGoldenGate.service to /etc/systemd/system/OracleGoldenGate.service. [root@ogg-mysql ogg]#
配置Oracle 到MySQL的同步
EXTRACT E_MYSQL SETENV (NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8") SETENV (ORACLE_HOME="/u01/app/oracle/product/19.0.0/dbhome_1") USERIDALIAS oggcdb DOMAIN OracleGoldenGate EXTTRAIL MYSQL/lt TABLEEXCLUDE pdb1.haifeng.SYS_EXPORT_SCHEMA*; TABLE pdb1.haifeng.*;
REPLICAT R_MYSQL TARGETDB testdb@192.168.56.52:3306 USERIDALIAS oggadm, DOMAIN OracleGoldenGate REPERROR DEFAULT, ABEND discardfile R_MYSQL.dsc, append, megabytes 4096 map pdb1.haifeng.t1, target testdb.T1;
EXTRACT INITEXT1 USERIDALIAS oggcdb DOMAIN OracleGoldenGate RMTHOST 192.168.56.52, MGRPORT 7812 RMTFILE MYSQL/rf TABLE pdb1.haifeng.t1;
SYS AS SYSDBA @ ogg>alter session set container=pdb1;
会话已更改。
SYS AS SYSDBA @ ogg>insert into haifeng.t1 VALUES(12,'mysql test');
已创建 1 行。
SYS AS SYSDBA @ ogg>commit;
提交完成。
SYS AS SYSDBA @ ogg>select * from haifeng.t1 where id=12;
ID NAME
---------- ------------------------------
12 mysql test
[mysql@ogg-mysql data]$ mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 34
Server version: 8.0.23 MySQL Community Server - GPL
Copyright (c) 2000, 2021, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> use testdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select * from testdb.T1 where id=12;
+-----------------------------------+------------+
| ID | NAME |
+-----------------------------------+------------+
| 12.000000000000000000000000000000 | mysql test |
+-----------------------------------+------------+
1 row in set (0.00 sec)
配置MySQL到Oracle的同步
最后修改时间:2021-07-07 16:29:21
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。