ORACLE GOLDEN GATE oracle同步数据至kafka

一.服务器信息

ip   软件版本 ogg版本 软件包 操作系统版本 OGG安装路径
10.1.50.52 oracle11.2.0.4 12.2.0.1.1 V100692-01.zip centos6.9 /data/ogg
10.0.71.102 目标 kafka0.10 12.2.0.1.160823 123010_ggs_Adapters_Linux_x64.zip centos7.3 /data/ogg

二.源端安装OGG

1.解压V100692-01.zip

unzip V100692-01.zip

这个时候会看到fbo_ggs_Linux_x64_shiphome文件夹

2.我们采用静默安装的方式进行安装(注意要使用oracle用户来进行安装,oggcore.rsp配置需要根据实际需要进行修改,也可使用图形界面进行安装)

/usr/local/software/fbo_ggs_Linux_x64_shiphome/Disk1/runInstaller -silent -responseFile /usr/local/software/fbo_ggs_Linux_x64_shiphome/Disk1/response/oggcore.rsp

三.源端OGG配置

1.开启主库归档日志、补充日志及force logging

alter database add supplemental log data;

alter database force logging;

alter system set enable_goldengate_replication=true scope=both;

2.创建ogg的管理用户

create user ogg identified by password account unlock;

grant connect,resource to ogg;

grant select any dictionary to ogg;

grant select any table to ogg;

grant execute on utl_file to ogg;

grant restricted session to ogg;

grant create table,create sequence to ogg;

alter table DCSDBA.YH_ITF_INVENTORY_TRANSACTION add supplemental log data (all) columns;--如果kafka需要接收到完整的修改信息就需要开启补全日志

3.登录ogg并创建目录

/data/ogg/ggsci

create subdirs

4.配置源端manager进程

edit params mgr

port 1357
autostart er *
autorestart er *

5.启动manager并确认状态

start mgr

info all 查看MANAGER进程为running状态

6.配置加密

ENCRYPT PASSWORD password ENCRYPTKEY
DEFAULT

7.配置数据抽取进程

①加一个extract,名字随便取

add extract hnwmsprd,tranlog,begin now

②为这个ext指定他把远程文件放到远程机的哪个目录

ADD RMTTRAIL /data/ogg/dirdat/tt, EXTRACT hnwmsprd

③编辑配置文件

edit params hnwmsprd

extract hnwmsprd

setenv
(NLS_LANG="AMERICAN_AMERICA.UTF8")

setenv
(ORACLE_SID="hnwmsprd")

userid ogg,password AACAAAAAAAAAAAKALILFJIXIECMGKFAHRBJHGDGBNJLBOAUC,ENCRYPTKEY
DEFAULT

rmthost 10.0.71.102, mgrport 1357

rmttrail /data/ogg/dirdat/tt

discardfile /data/ogg/dirrpt/trail.dsc,append,megabytes
100

gettruncates

GETUPDATEBEFORES

NOCOMPRESSDELETES

NOCOMPRESSUPDATES

TRANLOGOPTIONS MINEFROMACTIVEDG

table DCSDBA.YH_ITF_INVENTORY_TRANSACTION;

④启动进程

start hnwmsprd

四.OGG目标端搭建

目标端搭建只需解压软件即可

unzip 123010_ggs_Adapters_Linux_x64.zip

解压出来ggs_Adapters_Linux_x64.tar文件

将文件移动到/data/ogg目录下解压

mv ggs_Adapters_Linux_x64.tar /data/ogg
tar -xvf ggs_Adapters_Linux_x64.tar

五.OGG目标端配置

1.登录ogg并创建目录

/data/ogg/ggsci

create subdirs

2.配置源端manager进程

edit params mgr

port 1357
autostart er *
autorestart er *

3.启动manager并确认状态

start mgr

info all 查看MANAGER进程为running状态

4.修改复制进程配置

edit params rkafka

REPLICAT rkafka

TARGETDB LIBFILE libggjava.so SET
property=dirprm/kafka.props

REPORTCOUNT EVERY 1 MINUTES, RATE

GROUPTRANSOPS 10000

MAP DCSDBA.YH_ITF_INVENTORY_TRANSACTION,
TARGET DCSDBA.YH_ITF_INVENTORY_TRANSACTION;

5.修改kafka.props(注意:kafka.props要放在/data/ogg/dirprm路径下)

gg.handlerlist = kafkahandler

gg.handler.kafkahandler.type = kafka

gg.handler.kafkahandler.KafkaProducerConfigFile=custom_kafka_producer.properties

gg.handler.kafkahandler.TopicName =hnwmsprd

gg.handler.kafkahandler.format =json

gg.handler.kafkahandler.SchemaTopicName=ogg

gg.handler.kafkahandler.BlockingSend
=true

gg.handler.kafkahandler.includeTokens=false

gg.handler.kafkahandler.mode =tx

goldengate.userexit.timestamp=utc

goldengate.userexit.writers=javawriter

javawriter.stats.display=TRUE

javawriter.stats.full=TRUE

gg.log=log4j

gg.log.level=INFO

gg.report.time=30sec

gg.classpath=dirprm/:/usr/local/kafka/libs/*:

javawriter.bootoptions=-Xmx512m
-Xms32m -Djava.class.path=ggjava/ggjava.jar

以上配置文件根据实际配置进行修改

6.编辑custom_kafka_producer.properties文件(注意:custom_kafka_producer.properties要放在/data/ogg/dirprm路径下)

#bootstrap.servers=host:port
bootstrap.servers=10.0.71.102:9092
acks=1
#compression.type=gzip
reconnect.backoff.ms=1000

value.serializer=org.apache.kafka.common.serialization.ByteArraySerializer
key.serializer=org.apache.kafka.common.serialization.ByteArraySerializer
# 100KB per partition
batch.size=102400
linger.ms=10000

7.启动复制进程

start rkafka

六.验证

目标端执行

./kafka-console-consumer.sh --zookeeper localhost:2181 --from-beginning --topic hnwmsprd

源端更新DCSDBA.YH_ITF_INVENTORY_TRANSACTION表。

时间: 2024-08-29 18:50:49

ORACLE GOLDEN GATE oracle同步数据至kafka的相关文章

OGG 从Oracle备库同步数据至kafka

OGG 从Oracle备库同步数据至kafka Table of Contents 1. 目的 2. 环境及规划 3. 安装配置JDK 3.1. 安装jdk 3.2. 配置环境变量 4. 安装Dataguard 4.1. 安装备库软件 4.2. 配置dataguard 4.2.1. 主库 4.2.2. 备库 4.3. 完成操作 4.4. 启动实时复制 5. zookeeper集群 5.1. 上传并解压 5.2. 配置 5.3. 创建myid文件 5.4. 配置环境变量 5.5. 启动和查看服务

[Oracle] Golden Gate - 概念和机制

Golden Gate(简称OGG)提供异构环境下交易数据的实时捕捉.变换.投递. OGG支持的异构环境有: OGG的特性: 对生产系统影响小:实时读取交易日志,以低资源占用实现大交易量数据实时复制 以交易为单位复制,保证交易一致性:只同步已提交的数据 高性能 智能的交易重组和操作合并 使用数据库本地接口访问 并行处理体系 灵活的拓扑结构:支持一对一.一对多.多对一.多对多和双向复制等 支持数据过滤和转换 可以自定义基于表和行的过滤规则. 可以对实时数据执行灵活影射和变换. 提供数据压缩和加密:

Oracle Golden Gate体系架构详解(转载)

摘自ITEYE czmmiao  http://czmmiao.iteye.com/blog/1550877  GoldenGate简介 Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步.Oracle Golden Gate可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据亚秒一级的实时复制,从而在可以在应急系统.

转://Oracle Golden Gate 概念和原理

引言:Oracle Golden Gate是Oracle旗下一款支持异构平台之间高级复制技术,是Oracle力推一种HA高可用产品,简称"OGG",可以实现Active-Active 双业务中心架构 一.Golden Gate 特点 1.实时数据复制 2.异构平台数据同步 3.支持断点续传,不影响系统连续运行 4.高性能,属于轻量级软件 5.保证数据引用完整性和事物一致性 6.整合ETL Tools Message Service 7.灵活拓扑结构 1:1 1:N N:1 N:N 双向

Oracle golden gate 技术详解

一.系统概述 Oracle Golden Gate (简称OGG)是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志(redo log)或归档日志(archive log)获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源端数据库与目标端数据库同步.OGG可以实现不通平台(包括不通操作系统,数据库)实现大量数据亚秒一级的实时复制,从而可以在业务连续性保障.在线报表.数据仓库.交易跟踪.数据同步.集中/分发.容灾备份.数据库升级和移植.异地或同城双活业务中心等多个场景下应

Sybase to Oracle Golden Gate

Sybase 安装Golden Gate: 下载,然后create subdirs.并且在两端配置好mgr,设置好端口7809 创建golden gate用户ogguser,并且给它授权sa和replication [[email protected] ~]# su - sybase [[email protected] ~]$ vi .bash_profile --设置sybase路径还有DSQUERY=ASE1 [[email protected] ~]$ isql -Usa -P11111

使用OGG,两个Oracle库之间单向同步数据

配置:源数据库100.100.100.21         实例名dbsid2 目标数据库100.100.100.41       实例名db1 实验目标:源数据库中的 scott用户 emp表同步到目标数据库 scott中的test表 安装包为文件ogg112101_fbo_ggs_Linux_x64_ora10g_64bit.zip 解压之后,然后再tar解压tar -xvf fbo_ggs_Linux_x64_ora10g_64bit.tar -C  /oracle/ogg/ 1.    

Zero Downtime Upgrade of Oracle 10g to Oracle 11g Using GoldenGate — 3

DDL Setup Steps SQL> grant execute on utl_file to ggs; Grant succeeded. Create GLOBALS file [[email protected] ~]$ cd /ggs/ [[email protected] ggs]$ cat GLOBALS GGSCHEMA GGS run marker_setup.sql [[email protected] ggs]$ sqlplus / as sysdba SQL*Plus:

实现从Oracle增量同步数据到GreenPlum

简介: GreenPlum是一个基于PostgreSQL数据库开发的MPP架构的数据库仓库,适用于OLAP系统,支持50PB(1PB=1000TB)级海量数据的存储和处理. 背景: 目前有一个业务是需要将Oracle数据库中的基础数据增量同步到GreenPlum数据仓库,便于进行数据分析和处理. 规模: 每天产生60G左右数据,最大的表每天新增上亿条数据. 解决方法: 1)历史数据通过抽取导入的方式进行初始化. 2)增量更新数据: 使用GoldenGate将Oracle日志解析,传给GreenP