【大数据实时数据同步】超级详细的生产环境OGG(GoldenGate)12.2实时异构同步Oracle数据部署方案(上)
【大数据实时数据同步】超级详细的生产环境OGG(GoldenGate)12.2实时异构同步Oracle数据部署方案(中)
【大数据实时数据同步】超级详细的生产环境OGG(GoldenGate)12.2实时异构同步Oracle数据部署方案(下)
文章目录
博主所在单位目前使用Oracle GoldenGate将各个业务生产库汇聚到一起做数仓实时ODS平台,源端库可能涉及Oracle、Mysql、达梦、Guassdb库。
之前写过一系列关于GoldenGate异构同步Mysql、Kafka、Kylin、Flink做实时计算的场景文章。但是突然发现,卧槽最最最应该第一个做的Oracle->Oracle的实时异构同步文档竟然没写!
来弥补一下这个空白!!!
好了,扯远了,回归技术!
下面是我给大家的生产环境下,如何部署GoldenGate12C及异构实时同步数据的解决方案。本文主要介绍如何实现实时异构的进行Oracle->Oracle的数据同步,这种数据同步适用于灾备、升级、实时ODS等场景使用。我这里给大家了三个GoldenGate部署方式,看大家喜欢用哪种吧!!
注意:本部署方案分为三章节,三章节的重点分别是:
此架构为ALO模式的数据同步,系统均为:OracleLinux6.8,数据库安装可以参考另一篇数据库安装文档:
【大数据开发运维解决方案】linux5 安装 oracle 11g(11.2.0.4)实验。
源端数据库配置信息:
主机名:source
IP:192.168.1.6
归档位置:/u01/arch
字符集:AMERICAN_AMERICA.AL32UTF8
目的端数据库配置信息:
主机名:ogg
IP:192.168.1.10
归档位置:/u01/arch
字符集:AMERICAN_AMERICA.ZHS16GBK
UTF8是GBK的超集,有可能有些utf8中有但是gbk没有的字符,就会报错,比如之前生产遇到的不间断空格(c2a0),文章连接:
【大数据实时数据同步】GoldenGate实时同步异常:OGG-03533:character ‘c2 a0‘ at offset 0 that is not available报错解决
GoldenGate公司成立于1995年的美国加州旧金山, 它的名称源自旧金山闻名于世的金门大桥。
该公司于2009年9月被Oracle公司收购,在此之前Oracle和GoldGate公司就有了长达超过10年的合作关系。
GoldenGate几乎支持市面上流行的所有主流的操作系统平台和数据库。
点击此处跳转Oracle官网下载
我是通过xmanager的ftp上传的,解压命令
[oracle@source u01]$ unzip V861007-01.zip

源端环境变量设置如下:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
export ORACLE_BASE=/u01/app/oracle
export GGHOME=$ORACLE_BASE/ogg12
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_BASE/ogg12:$ORACLE_HOME/OPatch
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export LD_LIBRARY_PATH=$ORACLE_HOME/lib--如果不配置这个,会爆缺少libnnz11.so等库文件的错。所以这里制定这些库文件,可以和后面安装过程用ldd命令验证的步骤搭配看
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
alias ss='sqlplus / as sysdba'
alias sc='sqlplus scott/tiger'
alias c='cd $GGHOME'
alias g='rlwrap ./ggsci'
目的端环境变量配置:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
export ORACLE_BASE=/u01/app/oracle
export GGHOME=$ORACLE_BASE/ogg12
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=ogg
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_BASE/ogg12:$ORACLE_HOME/OPatch
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
alias ss='sqlplus / as sysdba'
alias sc='sqlplus scott/tiger'
alias c='cd $GGHOME'
alias g='rlwrap ./ggsci'
环境变量配置完要source .bash_profile一下生效
因为两端都指定ogg安装目录为/u01/app/oracle/ogg12,所以两边都做下面操作:
mkdir /u01/app/oracle/ogg12
验证是否开启
SQL> archive log list
alter database force logging;
验证是否开启
select force_logging from v$database;
alter database add supplemental log data;
验证是否开启
select supplemental_log_data_min,
supplemental_log_data_pk,
supplemental_log_data_ui,
supplemental_log_data_fk
from v$database;
创建表空间oggdata,用来存放ogg账户的相关数据
CREATE TABLESPACE OGGDATA DATAFILE '/u01/app/oracle/oradata/orcl/ogg.dbf' SIZE 200M AUTOEXTEND ON NEXT 100M MAXSIZE 1024M;
create user ogg identified by ogg default tablespace oggdata;
GRANT CREATE TABLE,CREATE SEQUENCE TO OGG;
grant connect, resource, dba to ogg;
查看数据库版本:
select*from v$version;
Oracle 11.2.0.4需要配置参数,之前的版本不需要配置
修改参数:
alter system set enable_goldengate_replication=true scope=both;
创建表空间oggdata,用来存放ogg账户的相关数据
CREATE TABLESPACE OGGDATA DATAFILE '/u01/app/oracle/oradata/orcl/ogg.dbf' SIZE 200M AUTOEXTEND ON NEXT 100M MAXSIZE 1024M;
create user ogg identified by ogg default tablespace oggdata;
GRANT CREATE TABLE,CREATE SEQUENCE TO OGG;
grant connect, resource, dba to ogg;
查看数据库版本:
select*from v$version;
Oracle 11.2.0.4需要配置参数,之前的版本不需要配置
修改参数:
alter system set enable_goldengate_replication=true scope=both;
本篇博客主要介绍了在安装OGG12C之前,数据库层面应该做哪些变化!
我已经在Sinatra上创建了应用程序,它代表了一个简单的API。我想在生产和开发上进行部署。我想在部署时选择,是开发还是生产,一些方法的逻辑应该改变,这取决于部署类型。是否有任何想法,如何完成以及解决此问题的一些示例。例子:我有代码get'/api/test'doreturn"Itisdev"end但是在部署到生产环境之后我想在运行/api/test之后看到ItisPROD如何实现? 最佳答案 根据SinatraDocumentation:EnvironmentscanbesetthroughtheRACK_ENVenvironm
我是Google云的新手,我正在尝试对其进行首次部署。我的第一个部署是RubyonRails项目。我基本上是在关注thisguideinthegoogleclouddocumentation.唯一的区别是我使用的是我自己的项目,而不是他们提供的“helloworld”项目。这是我的app.yaml文件runtime:customvm:trueentrypoint:bundleexecrackup-p8080-Eproductionconfig.ruresources:cpu:0.5memory_gb:1.3disk_size_gb:10当我转到我的项目目录并运行gcloudprevie
我正在玩HTML5视频并且在ERB中有以下片段:mp4视频从在我的开发环境中运行的服务器很好地流式传输到chrome。然而firefox显示带有海报图像的视频播放器,但带有一个大X。问题似乎是mongrel不确定ogv扩展的mime类型,并且只返回text/plain,如curl所示:$curl-Ihttp://0.0.0.0:3000/pr6.ogvHTTP/1.1200OKConnection:closeDate:Mon,19Apr201012:33:50GMTLast-Modified:Sun,18Apr201012:46:07GMTContent-Type:text/plain
您如何在Rails中的实时服务器上进行有效调试,无论是在测试版/生产服务器上?我试过直接在服务器上修改文件,然后重启应用,但是修改好像没有生效,或者需要很长时间(缓存?)我也试过在本地做“脚本/服务器生产”,但是那很慢另一种选择是编码和部署,但效率很低。有人对他们如何有效地做到这一点有任何见解吗? 最佳答案 我会回答你的问题,即使我不同意这种热修补服务器代码的方式:)首先,你真的确定你已经重启了服务器吗?您可以通过跟踪日志文件来检查它。您更改的代码显示的View可能会被缓存。缓存页面位于tmp/cache文件夹下。您可以尝试手动删除
我可以在Azure网站上部署RubyonRails吗? 最佳答案 还没有。目前仅支持.NET和PHP。 关于ruby-on-rails-RubyonRails可以部署在Azure网站上吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/12964010/
之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m
文章目录一、概述简介原理模块二、配置Mysql使用版本环境要求1.操作系统2.mysql要求三、配置canal-server离线下载在线下载上传解压修改配置单机配置集群配置分库分表配置1.修改全局配置2.实例配置垂直分库水平分库3.修改group-instance.xml4.启动监听四、配置canal-adapter1修改启动配置2配置映射文件3启动ES数据同步查询所有订阅同步数据同步开关启动4.验证五、配置canal-admin一、概述简介canal是Alibaba旗下的一款开源项目,Java开发。基于数据库增量日志解析,提供增量数据订阅&消费。Git地址:https://github.co
前置步骤我们都操作完了,这篇开始介绍jenkins的集成。话不多说,看操作1、登录进入jenkins后会让你选择安装插件,选择第一个默认的就行。安装完成后设置账号密码,重新登录。2、配置JDK和Git都需要执行路径,所以需要先把执行路径找到,先进入服务器的docker容器,2.1JDK的路径root@69eef9ee86cf:/usr/bin#echo$JAVA_HOME/usr/local/openjdk-82.2Git的路径root@69eef9ee86cf:/#whichgit/usr/bin/git3、先配置JDK和Git。点击:ManageJenkins>>GlobalToolCon
深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal
在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主