Oracle GoldenGate是用于实时数据集成和复制的综合软件包。它支持高可用性解决方案,实时数据集成,事务性更改数据捕获,数据复制,转换以及运营和分析企业系统之间的验证。
下表描述了两种Oracle GoldenGate体系结构以及何时使用每种体系结构。
对于基于日志复制的主备数据库来说,由于配置不当或者备库空间问题造成主数据库的日志被自动清理,造成主备数据库同步中断,对于管理人员来说,也许就是一种失责甚至灾难(如果主发生故障),同样基于日志复制的同步软件来说,存在同样的问题,日志由于各种原因被删除,造成同步数据被中断,如果有定时备份日志,无非就是延迟的问题,如果无日志,可能重新初始化,尤其对于架构复杂以及多链路的复制,修复数据也是头疼事情。
有时候随着业务的需要,需要将 Oracle 的部分数据通过 Kafka 进行分析,以获取最大的数据价值。那么就需要通过 OGG 抽取数据同步到 Kafka 了,搭建过程可查看上文,今天记录下遇到的一个罕见的错误,问题是这样的,通过 OGG 同步 Oracle 11g 数据到 Kafka 的一个应用进程 rep1,运行一段时间突然异常 ABENDED,查看日志报错如下:
最近在学习 Oracle 数据库的迁移与升级,用到了 OGG 这块知识,故和大家在来学习一下。之前有过两篇相关文章,感兴趣的可点下方链接查看。
目前,比较常用的数据同步软件有 CDC(Oracle Change Data Capture 变更数据捕获)、迪思杰(DSG)、九桥软件 DDS、OGG 、Debezium、Flink CDC、阿里 dataX 等等,今天在来聊聊 OGG 基础知识(注意:以下为两年前的旧文分享)。之前也有关于 OGG 基础知识的介绍文章,感兴趣的可点此链接查看。
摘自:ENABLE_GOLDENGATE_REPLICATION database parameter (Doc ID 1568417.1)
关于Oracle GoldenGate (简称OGG)的 Lag at Chkpt和Time Since Chkpt的理解,前提需要理解OGG的每个进程都有它自己的checkpoint file。每当一个进程看到在事务的commit时,检查点文件中就将产生一个检查点。OGG的恢复进程总是以检查点作为起点。而OGG是通过监控的checkpoint和Lag at Chkpt和Time Since Chkpt这2个指标来衡量数据同步延迟时效的。
我们通过GoldenGate技术在Oracle DB和Kafka代理之间创建集成,该技术实时发布Kafka中的CDC事件流。
前面几天发布了一篇使用 OGG 21c 遇到的几个问题之后,居然在新的周一后又发现了一个与 OGG 相关的问题,那是什么问题呢?且听小哥我慢慢道来。说来也简单就是使用 OGG21c 在中间机配置好了远程捕获 EXTRACT 进程,将数据导入到目标端 19c 后,源端捕获进程有很大的延迟,按照这个延迟来看,本地的归档日志也都删除了,可这个捕获进程呢没有任何报错,延迟一直在增大。
昨天使用GoldenGate同步数据,数据量玩得有些大了。最后发现很多小问题变得更加严峻,比如空间问题。 而且由于没有更多的经验,导致这个问题被我引入了另外一个极端。 查看目标端的空间,一个临时创建的目录一下子满了,得清理一下空间了。 [oracle@newtest ogg_10g]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda5 9.9G 9.4G 17M 100% / 停止了目标端的replicat进程
这个月我们同事对原来生产环境的 19c RAC 进行 schema 级别的拆分,将其从 RHEL7.6 RU 19.15 的两个 schema 拆分迁移到 RHEL7.9 RU 19.21 的 RAC 上,迁移前后表空间和 schema 名不变,唯一改变的则是 RU 补丁版本和数据库名及 IP 地址,同时也配置了 Oracle 到 Kafka 的数据同步,所以需要重新部署 OGG 来同步新迁移的数据,Oracle 到 Kafka 的数据同步可以参考我这篇使用 OGG12.3 同步 Oracle 部分表到 Kafka。
Best Practice for Data migration from Oracleto Tidb
我之前在《使用SQL计算宝宝每次吃奶的时间间隔(数据保障篇)》中提到数据实时同步的方案,其中有一种是数据表通过OGG进行同步,当时没有详细展开测试,只给了之前学习OGG时的配置示例。由于之前很少接触OGG的管理运维,最近在进行实际测试时遇到些问题,虽然不难,但也是初学者常遇到的问题,所以记录下这个过程。
Oracle Goldengate(以下简称OGG)是业界广泛使用的准实时数据复制软件,主要基于数据库日志进行变更数据的抽取,也就是我们常说的CDC(change data capture)的能力,Goldengate的优势主要体现支持各种异构环境下的数据复制,对生产库的影响最低(基于日志读取,非Sqoop这样直接查询数据的方式,同时可以支持remote capture)。
背景:本文是根据实际客户测试需求整理,因为客户OGG所在环境只有GI集群,数据库部署在其他位置,所以会有一些差异,但核心思路一致,已完全测试通过,整理出来供大家参考。
源端环境:RHEL 6.5 + Oracle 11.2.0.4 RAC + OGG 19.1.0.0.4 目标端环境:RHEL 7.6 + Oracle 19.3 + OGG 19.1.0.0.4 故障现象:源端表结构某字段数据类型长度增加,并插入对应数据,目标端因还是之前的数据类型长度,导致应用进程无法更新对应数据进而导致ABENDED,一般来说,只需目标端依据源端修改为一致的字段长度即可,但这里发现依然会ABENDED,且报错信息不变。
首先要说明是goldengate管理的内存不是物理内存,管理只是virtual memroy和swap disk,这个被称为cachesize management(COM).当goldengate进程启动后,COM向操作申请虚拟内存空间(不是真正物理内存,操作系统使用真正使用时候才会分配的机制来提高内存使用效率),只有COM真正需要实际内存空间,操作系统才会分配内存(分配内存空间也不是COM申请全部虚拟地址空间)
1、采用数据库的同步数据方式,例如以oracle代表采用基于日志物理同步方式,支持最大保护模式、最大可用模式、最大性能模式3种,以mysql为代表采用基于binlog日志逻辑同步方式.数据同步性能受到主备之间网络、主库事务大小、备库IO性能以及备库是否采用并行复制等
GoldenGate这些年在数据迁移中是大放光彩,简称OGG,对于很多DBA来说,学会这项技能也会给自己加分不少。 Oracle在10g开始推出的GRID的概念,分为了以下四个层面。 1)存储层面 ASM 2)数据库服务 RAC 3)应用 Stream 4)管理 Grid Control 现在来看看这四个方面的发展。 ASM如果说在10g是试水,那么在11g中是走向成熟,12c作为标配。 RAC呢,自不必说,其实已经远远超出了它本身的含义,数据库的组件那么多,唯独这个组件是很多大企业的首选,
OGG简介(GoldenGate) OGG 是一种基于日志的结构化数据复制软件 OGG 能够实现大量交易数据的实时捕捉,变换和投递,实现源数据库与目标数据库的数据同步,保持最少10ms的数据延迟。
GoldenGate软件是一种基于日志的结构化数据复制软件。GoldenGate 能够实现大量交易数据的实时捕捉、变换和投递,实现源数据库与目标数据库的数据同步,保持亚秒级的数据延迟。
goldengate算是数据同步的利器,可以在不同的库,平台间进行数据的同步,当然还是有一些bug的,不过还是优点大过缺点。 算是尝尝鲜,从官网下载了一个版本12的,可以支持11g,12c。安装的过程我开始以为会很繁琐。结果安装的过程很简单,不过配置和管理要费一些功夫的。后续再说。 下载安装包可以从官网上得到,大概300多兆的样子。 -rw-r--r-- 1 ogg dba 341316447 May 11 03:26 121200_fbo_ggs_Linux_x64_shiphome.zip 选择一下需要
D:\Oracle官方文档\E11882_01\install.112\e24326\toc.htm
在现代企业中,数据是至关重要的资产,确保数据在不同数据库间的实时同步变得尤为重要。Oracle数据库作为业界领先的数据库管理系统,提供了多种技术方案用于实现实时数据同步。本文将介绍几种常见的Oracle数据同步方案,包括使用GoldenGate、数据库触发器与自定义应用、第三方ETL工具以及LogMiner方式。
大神们在群里讨论微服务的高可用,主要是XAG不支持adminclient接口,只支持ggsci接口,经过查看官方文档说明,最新版本XAG已经支持adminclient接口,ORACLE CLUSTER不仅仅支持ORACLE DATABASE也可以来管理各种资源实现高可用,OGG高可用管理主要依赖XAG插件。本文主要讲述如何通过ORACLE CLUSTER加上XAG实现OGG Microservices微服务的高可用。
https://edelivery.oracle.com/osdc/faces/SoftwareDelivery
先说为啥是第二版呢,这里有两个原因,一是因为第一版大概是去年这个时候写的,没有考虑到序列同步的问题,如果你的数据库使用了序列,第一版是没有配置序列实时同步的,这样就导致了迁移完成后如果不单独导入系列,业务就没法使用,所以还需要处理序列。第二个原因是因为去年写的第一版大概是因为封面图使用了 O 注册商标,还是说文章抄袭了 O 享有的著作权,被北京某德事务所投诉,微信直接删除了这篇文章并清除了我历史关键字回复功能。。。点背,没办法,我也没办法申诉,只能默默认了。下面开始正文:
作者简介 桑凯 现任职于云和恩墨,具有多年 Oracle 数据库企业级运维经验,擅长容灾项目解决方案设计,作为项目经理负责多个基于 Oracle DataGuard 和 GoldenGate 的双中心
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy0623/article/details/53895518
使用OGG 21.3可以远程同步Oracle 11.2.0.4的数据库,这个我之前已经测试过,参考:https://www.xmmup.com/shiyongogg-21-3yuanchengshishihuxiangtongbuoracle-11-2-0-4shuangzhu.html
基于数据库的数据复制技术大体上可分为两类:数据库自己提供的数据容灾模块和第三方厂商提供的数据库复制技术。以最常见的Oracle数据库为例,Oracle自己的数据复制技术有Data Guard,Streams,Advanced Replication和Golden Gate数据复制软件。第三方厂商的数据复制技术有Quest公司的Share Plex和DSG的RealSync等。
今天试了下搭建GoldenGate,搭建的过程也简单总结了一下。 目前源数据库是newtest2 目标数据库是dataguru 都是11.2.0.4.0版本 关于GoldenGate的下载可以到下面的链接下载 http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html 在11g中,存在一个和GoldenGate有关的参数,默认是false,我们需要在源库,目标库都开启 SQL> show parameter
说 明:源端 Oracle 数据库版本 19c, ogg 19.1 源端也可以是 11.2.0.4 db,ogg 版本 12.3.0.1.2 目标端:Kafka 版本 kafka_2.11-2.0.0(本次不涉及) ogg for bigdata 12.3.2.1.1
环境:参考:OGG学习笔记02-单向复制配置实例 实验目的:了解OGG简单故障的基本处理思路。
On OGG Big Data Server * Configure Redshift JDBC Parameter Name: jdbc_redshift.props
本blog介绍了各种asm数据文件和filesystem文件之间的转换方法,有的记录了过程,有的没有记录过程只记录了相关代码,大家若有兴趣可以自行测试。
由于虚拟机宿主机重启,导致很多虚拟机服务需要重点关注,其中一个DG的从库和另一个report库有OGG同步,所以这里再系统恢复后检查OGG状态的时候,果然目标端的REPLICAT进程处于abend状态,重启也无效,具体信息如下:
由于公众号单篇文章的限制,上一篇文章只讲OGG Microservices for oracle数据库安装与配置,对于如何通过WEB端配置数据同步、如何通过命令行查看与管理服务、进程以及简单故障处理都没有讲解,所以本篇主要讲解如何通过WEB端来配置数据同步(与GGSCI命令行创建与管理抽取、传输以及应用进程类似)以及如何通过adminclient来直接查看与管理服务以及进程。
Oracle GoldenGate 是一款实时访问、基于日志变化捕捉数据,并且在异构平台之间迚行数据传输的产品。GoldenGate TDM是一种基于软件的数据复制方式,它从数据库的日志解析数据的变化(数据量只有日志的四分之一左右)。GoldenGate TDM将数据变化转化为自己的格式,直接通过TCP/IP网络传输,无需依赖于数据库自身的传递方式,而且可以通过高达10:1的压缩率对数据迚行压缩,可以大大降低带宽需求。在目标端,GoldenGate TDM可以通过交易重组,分批加载等技术手段大大加快数据投递的速度和效率,降低目标系统的资源占用,可以在亚秒级实现大量数据的复制,并且目标端数据库是活动的。
本文作者系Scott(中文名陈晓辉),现任大连华信资深分析师 ,ORACLE数据库专家,曾就职于甲骨文中国。个人主页:segmentfault.com/u/db_perf ,经其本人授权发布。
1、若源端OGG版本低,目标端OGG版本高,则此种配置不需要做任何的额外改动,跟两端是相同OGG版本的同步是完全一样的参数设置。
可能平时下载、安装Oracle,未必十分关注版本的问题,有时惯性思维,就选择一个最大的安装包,肯定是功能最丰富的,接着就装上用了。
由此可见,GoldenGate TDM的复制模式非常灵活,用户可以根据自己的需求选择特定的复制方式,并根据系统扩展对复制进行扩展。
对OGG进行交互的命令为GGSCI(GoldenGate Software Command Interface),GGSCI提供了十分丰富的命令来对OGG进行各种操作,如创建、修改、监控OGG进程等等,如下所示:
2、对于抽取进程所在的文件系统损坏或者被删除的情况,这个重建需要依赖应用进程或者传输进程,需要具体问题具体分析(如果文件损坏或误删除,大概率传输也会遭殃(具体情况具体分析),所以依赖应用进程比较靠谱)
PURGEOLDEXTRACTS /ogg/dirdat/horcl/hz*,USECHECKPOINTS,MINKEEPDAYS 2
注释:goldengate通过抽取源端日志写入trail(当然可以跳过),replicat应用trailfile中数据到目标端(可能是数据库也可能是消息队列中),replicat写入性能取决于ogg和目标端,ogg可能存在非优化配置或者目标端配置问题.
在这篇文章开始之前,先跟大家推荐一位 PG 大佬公众号,一直深耕 PostgreSQL 多年,混迹于各大互联网公司和各种大会,也属于数据库老司机,云计算泥石流,开源 RDS —— Pigsty 大本营,感兴趣的朋友可以关注下。
环境操作系统 centos6.5openssl版本: 1.0.1eogg版本 19.1MYSQL版本: 5.7.35报错配置抽取进程的时候,启动报错如下2022-06-23 05:54:53 WARNING OGG-00769 MySQL Login failed: . SQL error (2026). SSL connection error: error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:unknown gro
领取专属 10元无门槛券
手把手带您无忧上云