【ORACLE】OGG-微服务架构初探1(环境安装)

概述

OGG是ORACLE公司出品的数据库中间件,可以实现不同数据库之间的数据复制同步,截止目前已到21c版本。它有经典架构版和微服务版,据称经典架构版在未来将会弃用,鉴于此,作为初次接触,我们选择从微服务架构版(21c)开始。

提示: 有关经典架构的部署可以参考之前的文章 【ORACLE】OGG-命令行搭建一个简单环境(O2O)_慢工也能出细活的博客-CSDN博客

参考文献:

Installing Oracle GoldenGate Microservices

【DB宝79】使用OGG微服务快速双向同步RDS数据库 - 墨天轮

OGG用于PG数据库之间双主实时同步(RDS for PG亦可)–OGG远程捕获和投递 - 小麦苗DBA宝典 Oracle 迁移 PostgreSQL 中的OGG配置_howard_shooter的博客-CSDN博客

演示环境

我们事先准备了一套供演示的环境,配置如下:

主机 角色 数据库版本 操作系统 数据库名称 管理员名称口令
192.168.0.201 源库 oracle19c Oracle Linux7.9

PROD

prod2

sys/Cloud_4u
192.168.0.110 目标库 postgreSQL14 Ubuntu20.04 postgres postgres/postgres

我们要实验以下两个场景

场景一:oracle-oracle(双主)同步

场景二:在场景一的基础上增加一个oracle-postgresql(双主)同步

安装步骤

在开始之前,先了解一下部署OGG需要做的几个步骤

  1.  安装 Oracle GoldenGate 软件
  2. 设置必要的环境变量:OGG_HOMETNS_ADMINJAVA_HOME.
  3. 运行 Oracle GoldenGate 配置助手 (oggca) 向导为 Oracle GoldenGate 安装添加部署

(1) 【OGG软件安装】

参考以前的文章 

【ORACLE】OGG-命令行搭建一个简单环境(O2O)_慢工也能出细活的博客-CSDN博客

【OGG】之图形化安装_慢工也能出细活的博客-CSDN博客

(2) 【设置必要的环境变量】

按照官方文档上的说明, 从21c开始ORACLE_HOMELD_LIBRARY_PATH这两个参数会自动指向OGG_HOME定义的位置,OGG_HOME在前面安装的时候我们已经设置过了;TNS_ADMIN也可以不设,JAVA_HOME也要设,不过文档种没有说明要安装何种版本的JAVA,我特意选择了jkd1.8。

# jdk上传到/home/oracle
cd /home/oracle
tar xvzf jdk-8u333-linux-x64.tar.gz
vi /etc/environment
## 添加 JAVA_HOME="/jdk1.8.0_333"
source /etc/environment

echo java -version
展示结果即正常
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)

 (3)运行ogg配置助手(oggca)添加部署

用使用oggca助手添加部署大纲:

  1. 创建一个OGG管理服务
  2. 注册管理服务
  3. 使用管理服务管理web工具细化部署
  4. 配置数据复制进程

第一步        创建一个管理服务

运行oggca

# 部署所需的服务主目录
rm -rf /u02/oggdata/smprod
mkdir /u02/oggdata/smprod
# 软件主目录
mkdir /u02/oggdata/smprod/dirdep
# 部署主目录
mkdir /u02/oggdata/smprod/dirmgr
# 度量主目录
mkdir /u02/oggdata/smprod/dirbdb
# Trail文件主目录
mkdir /u02/oggdata/smprod/dirdat
# 报告主目录
mkdir /u02/oggdata/smprod/dirrpt

cd $OGG_HOME
cd bin
. oggca.sh

进入配置界面

【ORACLE】OGG-微服务架构初探1(环境安装)_第1张图片

 服务管理器部署主目录:/u02/oggdata/smprod/dirmgr,勾选【将服务管理器注册为系统服务...】【ORACLE】OGG-微服务架构初探1(环境安装)_第2张图片

 【ORACLE】OGG-微服务架构初探1(环境安装)_第3张图片

 部署名称:msprod

软件主目录: $OGG_HOME

 提示:软件主目录不能和管理主目录冲突,不能是OGG_HOME,所以我另外创建了一个目录

【ORACLE】OGG-微服务架构初探1(环境安装)_第4张图片

提示:部署主目录也不能和软件主目录,管理主目录,OGG_HOME冲突,所以我也另外重新建了一个目录

【ORACLE】OGG-微服务架构初探1(环境安装)_第5张图片

 演示环境用到的几个参数说明如下,更多参数参考文献说明。

OGG_HOME:/u02/oggdata

提示:安装 Oracle GoldenGate 的目录。这个变量是固定的,不能改变。如果前面已经设置了软件目录,则这里会自动填充

LD_LIBRARY_PATH:默认情况下,此路径指向 Oracle GoldenGate 安装目录和底层即时客户端目录

TNS_ADMIN:${ORACLE_HOME}/network/admin

提示:仅限ORACLE数据库,指明tnsnames.ora文件的位置,如果不设将查找$OGG_HOME/.tnsnames.ora或 /etc/tnsnames.ora,这个文件需要手动配置放到默认目录下。

ODBCINI:使用于postgreSQL上的OGG,指定用于存储数据源名称 (DSN) 以连接到 PostgreSQL 数据库的 ODBC 文件的完整路径。

JAVA_HOME:jdk的位置

 【ORACLE】OGG-微服务架构初探1(环境安装)_第6张图片

 管理员用户名:ggadmin 密码Cloud_4u【ORACLE】OGG-微服务架构初探1(环境安装)_第7张图片

 提示:由于是首次接触OGG,这里我们使用非安全性模式,这样可以少配置一些东西。关于安全模式的配置,我会在之后再专门演示。

【ORACLE】OGG-微服务架构初探1(环境安装)_第8张图片

 启用所有服务和监视,管理服务端口:7860,其他端口自动会填充

度量服务数据存储主目录:/u02/oggdata/smprod/dirbdb【ORACLE】OGG-微服务架构初探1(环境安装)_第9张图片

提示:默认schema,当GLOBALS配置文件没有指定复制模式的时候将使用这个默认模式。HR是安装演示数据库时选择了示例数据库

【ORACLE】OGG-微服务架构初探1(环境安装)_第10张图片

 提示:选择保存响应文件,这样可以以相同的方式快速部署到其他服务器节点。

等待配置过程...

第二步 注册管理服务

要完成配置过程还需要用root身份执行<服务管理器部署主目录>/bin/registerServiceManager.sh,执行完成后回到本界面点击确定。注册只在首次安装服务时需要,除非后面删除了所有管理服务,否则以后不用添加。

[root@host201 bin]# . registerServiceManager.sh
Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
----------------------------------------------------
     Oracle GoldenGate Install As Service Script    
----------------------------------------------------
OGG_HOME=/u01/stage/oggsc
OGG_CONF_HOME=/u01/oggserver/etc/conf
OGG_VAR_HOME=/u01/oggserver/var
OGG_USER=oracle
Running OracleGoldenGateInstall.sh...
Created symlink from /etc/systemd/system/multi-user.target.wants/OracleGoldenGate.service to /etc/systemd/system/OracleGoldenGate.service.

至此完成了OGG一个非安全模式的服务配置。

测试一下,用浏览器打开http://host201:7856

 能正确打开首页,则说明服务已经运行正常。

提示:管理服务的启停命令

systemctl start OracleGoldenGate

systemctl status OracleGoldenGate

systemctl stop OracleGoldenGate

如果 Oracle GoldenGate 服务管理器注册为系统守护程序,则服务管理器和其他服务器会在主机(重新)启动时自动启动 

你可能感兴趣的:(oracle管理,oracle,数据库,database)