暂无图片
暂无图片
15
暂无图片
暂无图片
暂无图片

OGG实战+ORACLE到ORACLE同步配置

原创 阿林哥 2021-03-19
7528

前言:

OGG远程部署方式,最佳抽取方式。

OGG版本:19.1
操作系统版本:linux 7

一、数据库配置

1.1 开启归档

startup mount
alter database archivelog;

note:作为目标端,不capture数据不需要配置

1.2 开启强制日志

alter database force logging;

note:作为目标端,不capture数据不需要配置

1.3 开启数据库最小附加日志

alter database add supplemental log data;

note:作为目标端,不capture数据不需要配置

1.4 配置参数

alter system set enable_goldengate_replication=true;

note:11.2.0.4以上需要配置

1.5 创建OGG用户和表空间

表空间

create tablespace ggtbs datafile '+DATA' size 1g autoextend on;

用户

create user ggadmin identified by ggadmin default tablespace ggtbs quota unlimited on ggtbs;

授权

grant connect,resource to ggadmin;
grant alter session to ggadmin;
grant select any dictionary to ggadmin;
grant select any transaction to ggadmin;
grant select any table to ggadmin;
grant flashback any table to ggadmin;
grant alter any table to ggadmin;
exec dbms_goldengate_auth.grant_admin_privilege('GGADMIN','*',TRUE)

note:除了必要权限,其他权限可以根据实际情况而定。

二、OGG安装

2.1 创建用户和目录

groupadd oinstall

用户

useradd -g oinstall oracle
passwd oracle

目录

mkdir /ogg/oraclient -p
mkdir /ogg/ogg191
mkdir /ogg/oraInventory
chown oracle:oinstall -R /ogg
chmod 775 -R /ogg

2.2 配置环境变量

export ORACLE_HOME=/ogg/oraclient/instantclient_11_2
export GG_HOME=/ogg/ogg191
export LD_LIBRARY_PATH=$ORACLE_HOME:$GG_HOME
export PATH=$ORACLE_HOME:$GG_HOME:$PATH
alias ggsci='cd GG_HOME; ggsci'

2.3 Oracle客户端静默安装

note:最基础客户端包即可

unzip -d /ogg/oraclient instantclient-basic-linux.x64-11.2.0.4.0

2.4 OGG静默安装

解压

unzip 19.1.0.0.4-for-Oracle-on-Linux x86-64

编辑响应文件

vi /home/oracle/fbo_ggs_Linux_x64_shiphome/Disk1/response/oggcore.rsp

INSTALL_OPTION=ORA11g
SOFTWARE_LOCATION=/ogg/ogg191
START_MANAGER=
MANAGER_PORT=
DATABASE_LOCATION=
INVENTORY_LOCATION=/ogg/oraInventory
UNIX_GROUP_NAME=oinstall

静默安装

./runInstaller -silent -showProgress -responseFile /home/oracle/fbo_ggs_Linux_x64_shiphome/Disk1/response/oggcore.rsp

三、OGG配置

note:以下配置均为远程捕获和交付的方式,无需在数据库本地安装部署。

3.1 配置TNS

创建目录

mkdir -p /ogg/oraclient/instantclient_11_2/network/admin

配置tnsnames.ora

vi tnsnames.ora

源端库
WLDB=
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = XXXXXX)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = WLDB)
    )
  )

目标库
TARGET=
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = XXXXXX)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = WLDB)
    )
  )

3.2 创建ogg目录

登录ogg交互工具

ggsci

创建目录

create subdirs

3.3 配置MGR进程

编辑参数

edit param mgr

PORT 7809 
DYNAMICPORTLIST 7810-7899
AUTORESTART ER *,RETRIES 5,WAITMINUTES 3
PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 7
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45

启动

start mgr

查看

info all

3.4 配置用户凭证

配置

add credentialstore
alter credentialstore add user ggadmin@wldb, password Oggadmin_#123 alias wldb
alter credentialstore add user ggadmin@target, password Oggadmin_#123 alias target

验证

dblogin useridalias wldb

3.5 配置extract进程

3.5.1 经典模式

添加附加日志

dblogin useridalias wldb
add trandata test.*

添加进程

add extract wl_e, tranlog, begin now,threads 2    --节点数
add exttrail  ./dirdat/wl, extract wl_e, MEGABYTES 1024

配置参数

edit param wl_e

EXTRACT wl_e
SETENV (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)
USERIDALIAS wldb
TRANLOGOPTIONS  dblogreader
LOGALLSUPCOLS
GETTRUNCATES
EXTTRAIL ./dirdat/wl
DISCARDFILE ./dirrpt/wl_e.dsc, APPEND, MEGABYTES 1024
WARNLONGTRANS 1H, CHECKINTERVAL 5M
CACHEMGR CACHESIZE 1024MB, CACHEDIRECTORY ./dirtmp
REPORTCOUNT EVERY 60 SECONDS, RATE

TABLE test.*;

Note:dblogreader最低支持版本为11.2.0.4,通过数据字典的方式获取日志信息,需要select any transaction权限

启动

start wl_e

查看

info all

3.5.2 集成模式

note:推荐集成模式,性能更好,原理是整合logminer,多租户环境只能用集成模式

数据库stream参数调整,一个进程建议1.25g

alter system set streams_pool_size=10g;

添加附加日志

dblogin useridalias wldb
add trandata test.*

添加进程

ADD EXTRACT ie_e INTEGRATED TRANLOG BEGIN NOW
ADD EXTTRAIL ./dirdat/ie EXTRACT ie_e MEGABYTES 1024

注册进程

dblogin useridalias wldb
REGISTER EXTRACT ie_e DATABASE

编辑参数

edit param ie_e

EXTRACT ie_e
USERIDALIAS wldb
LOGALLSUPCOLS
NOCOMPRESSUPDATES
UPDATERECORDFORMAT FULL
DBOPTIONS ALLOWUNUSEDCOLUMN
FETCHOPTIONS NOUSESNAPSHOT
GETTRUNCATES  
EXTTRAIL ./dirdat/ie
DISCARDFILE ./dirrpt/ie_e.dsc, PURGE, MEGABYTES 1024
WARNLONGTRANS 1H, CHECKINTERVAL 5M
CACHEMGR CACHESIZE 1024MB, CACHEDIRECTORY ./dirtmp
REPORTCOUNT EVERY 60 SECONDS, RATE

TABLE test.*;


Note:因为通过logminer挖掘日志,日志参数无需指定,可以利用参数配置logminer的并发数和内存大小

启动

start ie_e

查看

info all

3.6 配置pump进程

添加进程

add extract wl_p EXTTRAILSOURCE  ./dirdat/wl
add rmttrail /ogg/ogg191/dirdat/wl  extract wl_p MEGABYTES 1024

编辑参数

edit param wl_p

EXTRACT wl_p
DISCARDFILE ./dirrpt/wl_p.dsc, APPEND, MEGABYTES 1024
RMTHOST 192.168.3.132, MGRPORT 7809
RMTTRAIL /ogg/ogg191/dirdat/wl
PASSTHRU

TABLE test.*;

启动进程

start wl_p

查看

info all

3.7 配置replicat进程

添加数据库检查点表

dblogin useridalias target
add checkpointtable ggadmin.checkpoint

添加进程

ADD REPLICAT wl_r EXTTRAIL /ogg/ogg191/dirdat/wl checkpointtable ggadmin.checkpoint


编辑参数

edit param wl_r

REPLICAT wl_r
USERIDALIAS target
REPERROR (DEFAULT, ABEND)
DISCARDFILE ./dirrpt/wl_r.dsc, PURGE, MEGABYTES 1024
GETTRUNCATES
ALLOWNOOPUPDATES
REPORTCOUNT EVERY 60 SECONDS, RATE

MAP test.*, TARGET test.*;

启动

start wl_r

查看

info all

最后修改时间:2021-11-29 22:46:12
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论