OGG同步Oracle到Kafka不停库,全量加增量

📢📢📢📣📣📣

作者:IT邦德

中国DBA联盟(ACDU)成员,15年DBA工作经验

Oracle、PostgreSQL ACE

CSDN博客专家及B站知名UP主,全网粉丝15万+

擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,

安装迁移,性能优化、故障应急处理

文章目录

  • 1.开始抽取
  • 2.获取SCN
  • [3.Initial load](#3.Initial load)
    • [3.1 全量抽取](#3.1 全量抽取)
    • [3.2 全量应用](#3.2 全量应用)
  • [4. 增量追平](#4. 增量追平)
  • 总结

凌晨三点,报警器第5次响起------生产线实时数据同步又断了!老板的夺命Call在静夜里炸响:"停机?停一小时损失200万!"

别慌,用OGG的这把"手术刀",全量+增量同步无缝切换,业务零感知。今天揭秘:如何让Oracle到Kafka的血液,在心脏不停跳时完成移植。

接下来小编就叫你如何实现OGG技术同步Oracle 10PB的数据到Kafka,不停机的情况下如何全量+增量!

1.开始抽取

复制代码
GGSCI>ADD EXTRACT EXT, TRANLOG BEGIN NOW
GGSCI> ADD EXTTRAIL ./dirdat/aa, extract EXT, megabytes 2000

EXTRACT EXT
USERID ggs, PASSWORD ggpwd
EXTTRAIL ./dirdat/aa
TABLE SRC.*;

GGSCI> Start Extract EXT

2.获取SCN

复制代码
Get the current SCN on the source database:
SQL> select dbms_flashback.get_system_change_number from dual;
GET_SYSTEM_CHANGE_NUMBER
------------------------
3410138433

3.Initial load

3.1 全量抽取

复制代码
GGSCI>ADD EXTRACT <initial-load Extract>, SOURCEISTABLE
SOURCEISTABLE
USERID gg, PASSWORD gg
EXTFILE /gg/dirdat/rf , maxfiles 10, megabytes 2000
or
RMTFILE /gg/dirdat/rf, maxfiles 10, megabytes 2000
TABLE SRC.*, SQLPREDICATE 'AS OF SCN 3410138433';

3.2 全量应用

复制代码
ggsci> ADD REPLICAT rkafka, EXTTRAIL /gg/dirdat/rf, NODBCHECKPOINT
REPLICAT rkafka
setenv(OGG_HOME='/u01/app/oracle/goldengate/ogg_home/12.3.1.1/GGBD/')
TARGETDB LIBFILE libggjava.so SET property=dirprm/kafka.props
REPORTCOUNT EVERY 1 MINUTES, RATE
GROUPTRANSOPS 10000
MAP SRC.*, TARGET KAFKAADMIN.*;

4. 增量追平

复制代码
GGSCI> ADD REPLICAT REP, EXTTRAIL ./dirdat/aa, nodbcheckpoint
REPLICAT RPKAFKA
USERID ggs, PASSWORD ggpwd
setenv(OGG_HOME='/u01/app/oracle/goldengate/ogg_home/12.3.1.1/GGBD/')
TARGETDB LIBFILE libggjava.so SET property=dirprm/kafka.props
REPORTCOUNT EVERY 1 MINUTES, RATE
GROUPTRANSOPS 10000
MAP SRC.*, TARGET KAFKAADMIN.*;


GGSCI> Start replicat REP, aftercsn 3410138433

总结

这场与数据的赛跑,没有停机倒计时,只有分秒必争的精准刀法。全量迁移是筑基,增量同步是续命,OGG的接力棒从未掉落。当最后一条数据滑入Kafka,晨光刺破监控室的黑暗,你按下"同步完成"的绿灯------产线依旧轰鸣,报表准时生成,老板的手机安静如初。

所谓DBA的巅峰时刻,不过是把惊心动魄的战役,藏进风平浪静的黎明。技术人的浪漫,是让每一次数据迁徙,都像从未发生过那样完美无声。

相关推荐
陌上丨13 小时前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存
AI_567813 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
ccecw14 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
JH307314 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践
数据库·mysql
数据知道14 小时前
PostgreSQL 核心原理:如何利用多核 CPU 加速大数据量扫描(并行查询)
数据库·postgresql
麦聪聊数据15 小时前
Web 原生架构如何重塑企业级数据库协作流?
数据库·sql·低代码·架构
未来之窗软件服务15 小时前
数据库优化提速(四)新加坡房产系统开发数据库表结构—仙盟创梦IDE
数据库·数据库优化·计算机软考
Goat恶霸詹姆斯17 小时前
mysql常用语句
数据库·mysql·oracle
大模型玩家七七17 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
曾经的三心草17 小时前
redis-9-哨兵
数据库·redis·bootstrap