GoldenGate19.1 Oracle单向dml配置全过程

简介: 文档说明:GoldenGate19.1 Oracle单向dml配置全过程,源端说19c数据库,asm磁盘组,目标端是11g,本地文件系统。

文档说明:GoldenGate19.1 Oracle单向dml配置全过程,源端说19c数据库,asm磁盘组,目标端是11g,本地文件系统。



测试环境

IP地址 ogg版本 数据库版本 OS

源端 192.168.87.43 19.1 19.8 OLE 7.6

目标端 192.168. 17.194 19.1 11.2.0.4 OLE 6.7

VirtualBox-6.1-6.1.14_140239_el7-1.x86_64.rpm
[oracle@dell u01]$ ll /u02/install/191004_fbo_ggs_Linux_x64_shiphome.zip 
-rw-r--r--. 1 oracle oinstall 556240981 Sep 25 15:27 /u02/install/191004_fbo_ggs_Linux_x64_shiphome.zip
[oracle@dell u01]$


安装

mkdir /u01/app/oracle/ggs/19.1 -p
mv 191004_fbo_ggs_Linux_x64_shiphome.zip /u01/app/oracle/ggs/19.1/
unzip 191004_fbo_ggs_Linux_x64_shiphome.zip
[oracle@ogg19 ~]$ cd fbo_ggs_Linux_x64_shiphome/Disk1/
[oracle@ogg19 Disk1]$ ll
total 16
drwxr-xr-x  4 oracle oinstall 4096 10月 18 2019 install
drwxrwxr-x  2 oracle oinstall 4096 10月 18 2019 response
-rwxr-xr-x  1 oracle oinstall  918 10月 18 2019 runInstaller
drwxr-xr-x 12 oracle oinstall 4096 10月 18 2019 stage
[oracle@ogg19 Disk1]$ ./runInstaller 
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB.   Actual 42866 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 3071 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2020-09-30_02-42-53PM. Please wait ...[oracle@ogg19 Disk1]$ You can find the log of this install session at:
 /u01/app/oraInventory/logs/installActions2020-09-30_02-42-53PM.log

image.png

image.pngimage.pngimage.png

image.png



在.bash_profile中增加下面的行

export GGATE=$ORACLE_BASE/ogg19
export PATH=$PATH:$GGATE


GGSCI (ogg19) 2> CREATE SUBDIRS
Creating subdirectories under current directory /u01/app/oracle/ogg19
Parameter file                 /u01/app/oracle/ogg19/dirprm: already exists.
Report file                    /u01/app/oracle/ogg19/dirrpt: already exists.
Checkpoint file                /u01/app/oracle/ogg19/dirchk: already exists.
Process status files           /u01/app/oracle/ogg19/dirpcs: already exists.
SQL script files               /u01/app/oracle/ogg19/dirsql: already exists.
Database definitions files     /u01/app/oracle/ogg19/dirdef: already exists.
Extract data files             /u01/app/oracle/ogg19/dirdat: already exists.
Temporary files                /u01/app/oracle/ogg19/dirtmp: already exists.
Credential store files         /u01/app/oracle/ogg19/dircrd: already exists.
Masterkey wallet files         /u01/app/oracle/ogg19/dirwlt: already exists.
Dump files                     /u01/app/oracle/ogg19/dirdmp: already exists.
GGSCI (ogg19) 3> exit
[oracle@ogg19 ogg19]$ pwd
/u01/app/oracle/ogg19
[oracle@ogg19 ogg19]$

创建测试用户及测试数据

SQL> create tablespace tb_ogg datafile size 10m ;
SQL> create user scutech identified by dingjia default tablespace tb_ogg;
User created.
SQL> grant dba to scutech;
Grant succeeded.
$ sqlplus scutech/dingjia
SQL> create table tb (id int not null, name char(10), primary key(id));
Table created.

创建 OGG 用户,并赋权(Source & Target 步骤一样)

SQL> create user ogg identified by dingjia default tablespace tb_ogg;  
SQL> grant dba to ogg;

配置数据库日志

SQL> alter database add supplemental log data;
Database altered.
SQL> alter database force logging; 
Database altered.
SQL> set linesize 200;
SQL> select log_mode,supplemental_log_data_min,force_logging from v$database;
LOG_MODE   SUPPLEMENTAL_LOG FORCE_LOGGING
------------------------ ---------------- ------------------------------------------------------------------------------
ARCHIVELOG   YES    YES
SQL>     ALTER SYSTEM SWITCH LOGFILE;
System altered.
SQL> alter system set enable_goldengate_replication=true;
System altered.


Credential store配置



开启表级别日志,追加对象为用户scutech下所有表

GGSCI (oledb.scutech) 54> DBLOGIN USERID ogg password dingjia;
Successfully logged into database.
GGSCI (oledb.scutech as ogg@dbogg) 55> ADD SCHEMATRANDATA scutech
2020-10-14 19:00:57  INFO    OGG-01788  SCHEMATRANDATA has been added on schema "scutech".
2020-10-14 19:00:57  INFO    OGG-01976  SCHEMATRANDATA for scheduling columns has been added on schema "scutech".
2020-10-14 19:00:57  INFO    OGG-10154  Schema level PREPARECSN set to mode NOWAIT on schema "scutech".
2020-10-14 19:01:00  INFO    OGG-10471  ***** Oracle Goldengate support information on table SCUTECH.TA ***** 
Oracle Goldengate support native capture on table SCUTECH.TA.
Oracle Goldengate marked following column as key columns on table SCUTECH.TA: A
No unique key is defined for table SCUTECH.TA.
GGSCI (oledb.scutech as ogg@dbogg) 56> info SCHEMATRANDATA scutech
2020-10-14 19:01:23  INFO    OGG-06480  Schema level supplemental logging, excluding non-validated keys, is enabled on schema "SCUTECH".
2020-10-14 19:01:23  INFO    OGG-01980  Schema level supplemental logging is enabled on schema "SCUTECH" for all scheduling columns.
2020-10-14 19:01:23  INFO    OGG-10462  Schema "SCUTECH" have 1 prepared tables for instantiation.
GGSCI (oledb.scutech as ogg@dbogg) 57> info trandata scutech.*
2020-10-14 19:01:43  INFO    OGG-06480  Schema level supplemental logging, excluding non-validated keys, is enabled on schema "SCUTECH".
2020-10-14 19:01:43  INFO    OGG-01980  Schema level supplemental logging is enabled on schema "SCUTECH" for all scheduling columns.
2020-10-14 19:01:43  INFO    OGG-10471  ***** Oracle Goldengate support information on table SCUTECH.TA ***** 
Oracle Goldengate support native capture on table SCUTECH.TA.
Oracle Goldengate marked following column as key columns on table SCUTECH.TA: A
No unique key is defined for table SCUTECH.TA.
Logging of supplemental redo log data is enabled for table SCUTECH.TA.
Columns supplementally logged for table SCUTECH.TA: "A".
Prepared CSN for table SCUTECH.TA: 1968044



配置 Source 端 MGR 进程

配置全局文件

GGSCI (oledb.scutech) 2> edit params ./GLOBALS 
ggschema ogg


全局文件 GLOBALS 要大写,必须放在 Golden Gate 根目彔下,否则其会默认将配置文件创建在 Golden Gate 根目彔下的 dirprm 子目彔中,在全局文件中添加 GGSCHEMA参数,这个 ggschema 就是要抽取的数据库schema。


配置 MGR 参数文件

GGSCI  (oledb.scutech) 5> edit params mgr 
port 7809 
dynamicportlist 7800-8000 
autorestart extract *,retries 5,waitminutes 2,resetminutes 5


参数说明: Port:指定 MGR 进程通信端口 Dynamicportlist:MGR 进程为 Source 和 Target 端劢态通信指定端口 Autorestart Extract:自劢重启 Extract 进程组,每两分钟尝试重启所有 Extract 进程,重试 5 次,每隔 5分钟清零一次

注意:参数配置完成后,需要重启 MGR 进程后生效


GGSCI (oledb.scutech) 4> info all
Program     Status      Group       Lag at Chkpt  Time Since Chkpt
MANAGER     RUNNING


配置源数据抽取进程(Extract)

编辑配置文件 edit params ext1


extract ext1 
SETENV(ORACLE_SID='dbogg')
userid ogg,password dingjia 
exttrail /u01/app/oracle/ogg19/dirdat/et 
table scutech.*;
 TranlogOptions DBLOGREADER

参数说明:

Extract Ext1:表示此为 Extract 进程,当前 Group 为 Ext1

Setenv:设置环境发量字符集

Userid和password:表示登陆数据库使用的账号和密码

Exttrail:指定本地 Trail 文件地址

Table:表示要同步的表,*代表全部

TranlogOptions DBLOGREADER 不用配置登陆ASM需要的TNS配置内容,并且也不在需要指定归档路径,其自动会找到归档日志的位置

OGG11g提供一个新的参数:DBLOGREADER使用该参数,我们就不需要配置登陆ASM所需要的TNS配置内容,而且在参数文件里面也不需要制定归档路径的位置,它会自动去寻找归档路径。但如果要使用该参数,对数据库的版本有一定的要求,以下是官方文档对该参数的解释


添加抽叏进程

add extract ext1 ,tranlog,begin now


添加一个 group 为 ext1 的 extract 进程,并且使用的 tranlog 捕获模式,开始使用时间是 now。


添加本地 Trail 文件

add exttrail /u01/app/oracle/ogg19/dirdat/et,extract ext1

为 ext1 进程添加一个 remote trail 的链接,表明将会把 trail 传到目标端的/u01/app/oracle/ogg/dirdat 目彔下,并以 et 作为一系列 trail 的前缀。

启动服务

start ext1

如果出现:


2020-10-14T17:36:02.068+0800  ERROR   OGG-00685  Oracle GoldenGate Capture for Oracle, ext1.prm:  begin time 2020 M10 14 11:19:57 prior to oldest log in log history. Last SQL executed <SELECT 1   FROM dual   WHERE TO_DATE(:1,'YYYY-MM-DD HH24:MI:SS') <    (SELECT MIN(first_time)       FROM v$log_history      WHERE thread# = :2)>.

修改抽取的时间


GGSCI (oledb.scutech) 31> alter ext1 begin now
EXTRACT altered.


查看状态

GGSCI (oledb.scutech) 19> info all
Program     Status      Group       Lag at Chkpt  Time Since Chkpt
MANAGER     RUNNING                                           
EXTRACT     RUNNING     EXT1        00:00:00      05:06:20

配置源数据Pump 进程

编辑配置文件

edit params pump1
extract pump1
passthru
rmthost 192.168.17.194,mgrport 7809,compress
rmttrail /u01/app/oracle/ogg19/dirdat/pt
table scutech.*;

passthru:绕过数据定义检测


添加 pump 进程

add extract pump1,exttrailsource /u01/app/oracle/ogg19/dirdat/et

EXTRACT added. exttrailsource:表示这是个 data pump extract 与本地 trail 作连接


添加进程 Trail 文件

add rmttrail /u01/app/oracle/ogg19/dirdat/pt,extract pump1

RMTTRAIL added. tmttrail:将 pump 与 remote trail 做链接

启劢服务

start pump1

查看状态

info all

GGSCI (oledb.scutech) 37>  add extract pump1,exttrailsource /u01/app/oracle/ogg/dirdat/et
EXTRACT added.
GGSCI (oledb.scutech) 38>  add rmttrail /u01/app/oracle/ogg/dirdat/pt,extract pump1 
RMTTRAIL added.
GGSCI (oledb.scutech) 39>  start pump1 
Sending START request to MANAGER ...
EXTRACT PUMP1 starting


2020-10-14T15:57:55.238+0800 ERROR OGG-06220 Oracle GoldenGate

Capture for Oracle, ext1.prm: Classic Extract does not support

multitenant container databases.


配置 Target 端 MGR 进程

GGSCI (ogg19 as ogg@orcl) 48> view param mgr

PORT 7809
dynamicportlist 7800-8000 
autostart er * 
autorestart extract *, waitminutes 2, resetminutes 5 
lagreporthours 1 
laginfominutes 3 
lagcriticalminutes 5 
purgeoldextracts /u01/app/oracle/ogg19/dirdat/pt*, usecheckpoints, minkeepdays 3


配置 Target 端 Replicat 进程

配置 Replicat 进程参数


GGSCI (ogg19 as ogg@orcl) 47> view param rep1
replicat rep1 
userid ogg,password dingjia 
assumetargetdefs 
reperror default,discard 
discardfile /u01/app/oracle/ogg19/dirrpt/rep1.dsc,append,megabytes 50 
map scutech.*, target scutech.*;


创建 Checkpointtable


GGSCI (ogg19) 8> dblogin userid ogg password dingjia
Successfully logged into database.
GGSCI (ogg19 as ogg@orcl) 9> add checkpointtable ogg.checkpoint_table
Successfully created checkpoint table ogg.checkpoint_table.


添加复制进程


GGSCI (ogg19 as ogg@orcl) 47> view param rep1
replicat rep1 
userid ogg,password dingjia 
assumetargetdefs 
reperror default,discard 
discardfile /u01/app/oracle/ogg19/dirrpt/rep1.dsc,append,megabytes 50 
map scutech.*, target scutech.*;


add replicat rep1,exttrail /u01/app/oracle/ogg19/dirdat/pt, CHECKPOINTTABLE ogg.checkpoint_table

添加一个 replicat 进程,group 为 rep1 , 并 且 链 接 到 相 应 的 trail 文件,使用名为ogg.checkpoint_table 作为 checkpointtable。

GGSCI (ogg19 as ogg@orcl) 46> info rep1
REPLICAT   REP1      Last Started 2020-10-15 15:30   Status RUNNING
Checkpoint Lag       00:00:00 (updated 00:00:01 ago)
Process ID           23046
Log Read Checkpoint  File /u01/app/oracle/ogg19/dirdat/pt000000000
                     2020-10-15 15:17:45.757109  RBA 2187

测试

在源


SQL> insert into tb values(6,'kkk');
1 row created.
SQL> commit
  2  ;


在目标


SQL> select * from tb;
  ID NAME
---------- ----------
  2 dd
  3 aa
  4 sdsds
  6 kkk
相关文章
|
5月前
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——Dept实体类和对应的配置信息
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——Dept实体类和对应的配置信息
|
12月前
|
Oracle 关系型数据库 数据库
百度搜索:蓝易云【docker部署并配置oracle12c的cdb和pdb教程!】
以上是使用Docker部署和配置Oracle 12c CDB和PDB的简要教程。请注意,这只是一个概述,并且可能需要根据你的实际情况进行适当的调整和配置。建议参考Oracle官方文档和相关资源,以获得更详细和全面的指导。
133 2
|
1月前
|
Ubuntu Oracle 关系型数据库
Oracle VM VirtualBox之Ubuntu 22.04LTS双网卡网络模式配置
这篇文章是关于如何在Oracle VM VirtualBox中配置Ubuntu 22.04LTS虚拟机双网卡网络模式的详细指南,包括VirtualBox网络概述、双网卡网络模式的配置步骤以及Ubuntu系统网络配置。
61 3
|
2月前
|
Oracle 关系型数据库 BI
ORACLE Apex: EBS多组织结构 理解与配置
【8月更文挑战第11天】在Oracle Apex中理解和配置与EBS多组织结构相关内容需掌握:1) EBS多组织结构概念及组成部分,如法律实体、业务单位与库存组织;2) Oracle Apex与EBS集成的目的与方式,包括提供友好界面及自定义业务流程;3) 在Apex中配置多组织结构应用,涉及数据访问控制、页面报表设计及业务流程集成。整体而言,需精通EBS架构与Apex开发技术,以实现高效灵活的企业解决方案。
|
5月前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用合集之可以通过配置Oracle数据库的schema注册表来监测表结构的变化吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
44 1
|
5月前
|
敏捷开发 人工智能 Oracle
Oracle PLM Agile936 单点登录配置方式
Oracle PLM Agile936 单点登录配置方式
|
11月前
|
SQL Oracle 关系型数据库
Oracle21C + PLSQL Developer 15 + Oracle客户端21安装配置完整图文版
Oracle21C + PLSQL Developer 15 + Oracle客户端21安装配置完整图文版
455 0
|
5月前
|
JavaScript Java 数据库连接
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——Emp实体类和对应的配置信息
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——Emp实体类和对应的配置信息
|
11月前
|
消息中间件 Oracle 关系型数据库
Flink CDC确实支持Oracle分区表的CDC,但是在配置时需要特别注意。以下是一些可能的解决方案
Flink CDC确实支持Oracle分区表的CDC,但是在配置时需要特别注意。以下是一些可能的解决方案
119 1
|
12月前
|
Oracle 关系型数据库 数据库连接
Windows系统安装配置Oracle数据库连接工具PLSQL
Windows系统安装配置Oracle数据库连接工具PLSQL
105 0

推荐镜像

更多