oracle Golden Gate 实现数据同步

oracle Golden Gate 实现数据同步

1.应用场景

生产数据库正常运行下进行ogg操作,实现到测试库的实时同步功能。

2.原理分析

ogg主要是四个服务:Manager,Extract,Pump,Replicat

  • Manager:控制ogg 启动 状态 停止 等
  • Extract:捕获 源 端数据 利用其内在的checkpoint机制,周期性地检查 并记录其读写的位置,通常是写入到本地的trail文件
  • Pump:把Trail文件以数据块的形式通过 TCP/IP协议发送到目标端
  • Replicat:读取目标端Trail文件中的内容,并将解析其解析为DML或DDL语句,然后应用到目标数据库中。

针对当前场景,
在官网:https://docs.oracle.com/goldengate/1212/gg-winux/GIORA/instantiate.htm#GIORA403
中介绍了如下方式。

实际部署时需要注意正确的执行顺序:
(1) 源端和目标端创建配置各个同步进程。
(2) 开启源端同步抓取进程(图上的Change Extract),开始捕获变化。
(3) 开启初始化进程(图上的Initial-Load Extract),开始数据初始化加载。
(4) 等初始化加载结束,开启目标端复制应用进程(图上的ChangeReplicat),开始实时同步应用。

3.实现方式

3.1下载

官网的下载地址:选择适合自己oracle版本的ogg版本。https://www.oracle.com/middleware/technologies/goldengate-downloads.html
或者下载百度云分享的链接文件
https://download.csdn.net/download/fzxiaocai/85018709

3.2当前版本信息
服务器ip 系统 oracle goldengate 实例 用户密码 表空间
192.168.66.2 centos7.5 11.2.0.4 19.1.0.0.4 orcl Lczy_2022 ogg 源端
192.168.66.3 centos7.5 11.2.0.4 19.1.0.0.4 orcl Lczy_2022 ogg 目标端
3.3安装ogg

源端操作:

  1. 目录创建
mkdir /home/goldengate   
mkdir -p /home/oracle/product/ogg_src  
chown -R oracle:oinstall /home/goldengate/
chown -R oracle:oinstall /home/oracle/product/ogg_src
  1. 文件解压
unzip fbo_ggs_Linux_x64_Oracle_shiphome.zip -d /home/goldengate/
chown -R oracle:oinstall /home/goldengate/
  1. 环境变量
vim /home/oracle/.bash_profile
------------------------------
export OGG_HOME=/home/oracle/product/ogg_src
export PATH=$OGG_HOME:$PATH
export LD_LIBRARY_PATH=$OGG_HOME:$LD_LIBRARY_PATH
------------------------------
source /home/oracle/.bash_profile
  1. 安装ogg-manager
cd /home/goldengate/fbo_ggs_Linux_x64_Oracle_shiphome/Disk1
./runInstaller  ## 也可以选择静默安装
alias ggsci="rlwrap /home/oracle/product/ogg_src/ggsci" 
##关闭终端再连接一次,出现此页面说明安装完成 --oracle执行  如下报错:bash: rlwrap: command not found... 解决:重连ssh
[oracle@oracle-m ~]$ ggsci
·················
GGSCI (oracle-m) 1> view param mgr
PORT 7809
GGSCI (oracle-m) 2> info mgr
Manager is running (IP port TCP:oracle-m.7809, Process ID 4669).
  1. 创建用户和分配权限
    还有其他的权限配置方式,详见文末。
cd
mkdir -p oradata/orcl 
sqlplus / as sysdba
create tablespace OGG logging datafile '/home/oracle/oradata/orcl/OGG.DBF' size 20m autoextend on uniform size 2m;
create user ogg identified by ogg default tablespace OGG temporary tablespace TEMP quota unlimited on OGG;  

grant unlimited tablespace to ogg;
grant dba to ogg;
  1. 开启数据库附加日志
## oracle 11.2.0.4和oracle 12.1.0.2及之后的版本需要设置如下参数
SQL> alter system set enable_goldengate_replication=true scope=both;             
##打开最小附加日志
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
SQL> ALTER DATABASE FORCE LOGGING;
SQL> SELECT supplemental_log_data_min, force_logging FROM v$database;
SQL> ALTER SYSTEM SWITCH LOGFILE;
## 有操作如下:涉及重启数据库 !!! 慎重 !!! 操作
SQL> select log_mode, supplemental_log_data_min, force_logging from v$database;
LOG_MODE     SUPPLEME FOR
------------ -------- ---
NOARCHIVELOG NO       NO
###查看后发现没有开启归档模式,需要开启
shutdown immediate    ##--关闭数据库   
startup mount;   ##--启动mount模式
alter database archivelog;  ## --启用归档日志
alter database open; ##--打开数据库
alter database force logging;  ##--启用強制日志
alter database add supplemental log data; ##--启用附加日志
alter system switch logfile; ##--切换日志文件
# 源端需要添加   用户级别的  或者   表级别  的附加
# 选择其一
##用户级别的附加
ggsci 
dblogin userid ogg, password ogg   
add schematrandata ogg
##表级别的附加 
ggsci
dblogin userid ogg, password pwd
add trandata ogg.togg;

目标端:

  1. 目录创建
mkdir /home/goldengate    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值