OGG单实例下安装配置

OGG单实例下安装配置
1.环境配置
1.1硬件配置
源库:
OGG单实例下安装配置_第1张图片
目标库:
OGG单实例下安装配置_第2张图片

1.2软件配置

系统版本	Oracle版本	Ogg版本	IP

源端 Centos7.7 11.2.0 12.2.0 192.168.132.147
目标端 Centos7.7 11.2.0 19.1.0. 192.168.132.144

1.3配置需求
安装目录 tail文件目录 安装用户 端口号 管理用户

源端
/ogg/app/ogg

/ogg/app/ogg/dirdat
oracle

7809

ggadm

目标端
/ogg/app/ogg

/ogg/app/ogg/dirdat

oracle

7809

ggadm

  1. OGG安装过程
    2.1 源数据库配置步骤
    1)如果Oracle没有开启归档模式,先把Oracle数据库开起归档模式,要在mount状态下
    SQL>Alter database archivelog
    2) 开启Force logging
    SQL>Alter database force logging
    3) 开启supplemental logging
    SQL>Alter databaseadd supplemental log data;
    4) 设置数据库GoldenGate参数
    SQL> show parameter enable_goldengate_replication;
    SQL> alter system set enable_goldengate_replication=true scope=both ; --如果是RAC情况下的话,RAC的所有实例也需要设置,在一个节点执行下面操作即可:
    alter system set enable_goldengate_replication=true scope=both sid=’*’;
    5) 创建OGG表空间
    SQL>create tablespace ogg_tbs datafile ‘xxxxxx/datafile/ogg_tbs_01.dbf’ size 5G AUTOEXTEND on extent management local segment space management auto ;
    6) 创建OGG账号
    SQL>create user ggadm identified by 123456default tablespace ogg_tbs;
    7) 给OGG账号赋权
    在测试库里可直接给ogg账户dba权限
    SQL>grant dba to ggadm;
    SQL>commit;
    8)配置oracle的tnsnanme.ora文件,一般在/ORACLE_HOME/ product/12.2.0/network/admin目录下
    vi $ORACLE_HOME/network/admin/tnsnames.ora
    OGGSOURCE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = zzw)
    )
    )

2.2 OGG安装准备
1) 上传压缩包到两台服务器,并赋权
]# chown -R oracle:oinstall 123010_fbo_ggs_Linux_x64_shiphome.zip
]# chomd -R 755 123010_fbo_ggs_Linux_x64_shiphome.zip
在这里插入图片描述
2) 解压缩安装包
su – oracle
cd /home/oracle
unzip 123010_fbo_ggs_Linux_x64_shiphome.zip
unzip / 123010_fbo_ggs_Linux_x64_shiphome.zip
3) 修改安装用户环境变量,要注意这里是用的oracle用户

在oracle家目录下修改.bash_profile文件,在里面加入以下参数
$ vi .bash_profile
export GG_HOME=/ogg/app/ogg
export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:GG_HOME: O R A C L E H O M E / b i n : ORACLE_HOME/bin: ORACLEHOME/bin:PATH
export LD_LIBRARY_PATH= L D L I B R A R Y P A T H : LD_LIBRARY_PATH: LDLIBRARYPATH:GG_HOME: O R A C L E H O M E / l i b : / l i b : / u s r / l i b : ORACLE_HOME/lib:/lib:/usr/lib: ORACLEHOME/lib:/lib:/usr/lib:GG_ADAPTER_HOME
2.3 OGG安装步骤
1) 修改response响应参数文件
cd /home/oracle/fbo_ggs_Linux_x64_shiphome /Disk1/response
2) 编辑参数
vi oggcore.rsp ----修改两个地方的参数
INSTALL_OPTION=ORA11g ----11g数据库选择ORA11g,19C选择ORA19c
SOFTWARE_LOCATION=/ogg/app/ogg ----ogg安装目录是自己mkdir的
3) 开始安装
/home/oracle/fbo_ggs_Linux_x64_shiphome/Disk1/runInstaller -silent -nowait -responseFile /home/oracle/fbo_ggs_Linux_x64_shiphome/Disk1/response/oggcore.rsp
4) 检测是否正常安装
$cd /ogg/app/ogg/
$ ldd ggsci

5) 创建参数文件、数据文件、日志文件等的子目录
$ ./ggsci
OGG单实例下安装配置_第3张图片

GGSCI > create subdirs
GGSCI > show
Parameter settings:
SET SUBDIRS ON
SET DEBUG OFF
Current directory: /ogg/app/ogg
Using subdirectories for all process files
Editor: vi
Reports (.rpt) /ogg/app/ogg/dirrpt
Parameters (.prm) /ogg/app/ogg/dirprm
Replicat Checkpoints (.cpr) /ogg/app/ogg/dirchk
Extract Checkpoints (.cpe) /ogg/app/ogg/dirchk
Process Status (.pcs) /ogg/app/ogg/dirpcs
SQL Scripts (.sql) /ogg/app/ogg/dirsql
Database Definitions (.def) /ogg/app/ogg/dirdef
Dump files (.dmp) /ogg/app/ogg/dirdmp
Masterkey wallet files (.wlt) /ogg/app/ogg/dirwlt
Credential store files (.crd) /ogg/app/ogg/dircrd
3. OGG 配置过程
3.1 OGG连接配置
1) 创建credential store
GGSCI > add credentialstore --把用户凭证加入Credentialstore里
2) 把用户凭证加入Credentialstore
GGSCI >alter credentialstore add user ggadm@OGGSource,password 123456 alias oggsourceadm

3) 测试是否可以免密登录
GGSCI > dblogin useridalias oggsourceadm
4) 配置抽取表
推荐使用用户级别的附加日志方式:
GGSCI (oggsourceadm)>add trandata schema.tablename,allcols
ADD SCHEMATRANDATA XXX
https://blog.csdn.net/liqfyiyi/article/details/46531233
1、ADD SCHEMATRANDATA操作相关命令即可触发Oracle Database自动记录相应schema下对应的表
2、ADD SCHEMATRANDATA选择的逻辑主键顺序为:主键->多个唯一键->大对象以外的全字段;多个唯一键则全记录,与是否有非空约束无关。
3、ADD SCHEMATRANDATA能在不对表作DDL操作的情况下自动触发数据库表记录逻辑主键,当因索引约束增删而导致逻辑主键变更时,ADD SCHEMATRANDATA能快速自动调整,无需干预
4、ADD SCHEMATRANDATA比ADD TRANDATA记录更多的日志,但多记录的仅为唯一索引约束对应的字段,影响较小
5、ADD SCHEMATRANDATA不会触发视图dba_log_groups以及dba_log_group_columns变更
6、ADD SCHEMATRANDATA预计能处理绝大部分的情况,除了下述极端情况
时间点1 创建表TAB
时间点2 创建表TAB的非空唯一约束IND_UI
时间点3 对表TAB做INSERT以及UPDATE操作,其中的UPDATE操作不涉及后来主键IND_PK对应字段,因此不被记录
时间点4 创建表TAB的主键IND_PK
时间点5 GoldenGate抽取进程获取数据字典信息,选择IND_PK对应字段为逻辑主键
时间点6 GoldenGate抽取进程处理时间点3的UPDATE记录,发现IND_PK对应字段不在数据库日志中,导致异常
这种情况即使开启SUPPLEMENTAL_LOG_DATA_PK也没用,原因:记录非空的唯一约束IND_UI已满足SUPPLEMENTAL_LOG_DATA_PK需求。
5) 查看配置情况
GGSCI (oggsourceadm)>info trandata schema.tablename
info SCHEMATRANDATA xxx
6)创建checkpoint表
GGSCI (oggsourceadm)>add checkpointtable ggadm.checkpoint
3.2 管理进程配置
1) 配置全局参数
GGSCI > edit params ./GLOBALS

–For Performance Monitor:
–ENABLEMONITORING
CHECKPOINTTABLE ggadm.checkpoint
– For DDL :

GGSCHEMA ggadm
2) 配置MGR进程
GGSCI>edit param mgr
PORT 7809
DYNAMICPORTLIST 7810-7830
–AUTOSTART ER *
AUTORESTART EXTRACT ,RETRIES 5,WAITMINUTES 3
PURGEOLDEXTRACTS./dirdat/
,usecheckpoints, minkeepdays 7
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45
MANAGER进程参数配置说明:
PORT:指定服务监听端口;默认端口为7809
DYNAMICPORTLIST:动态端口:可以制定最大256个可用端口的动态列表,当指定的端口不可用时,管理进程将会从列表中选择一个可用的端口,源端和目标段的Collector、Replicat、GGSCI进程通信也会使用这些端口;
COMMENT:注释行,也可以用–来代替;
AUTOSTART:指定在管理进程启动时自动启动哪些进程;
AUTORESTART:自动重启参数设置:本处设置表示每3分钟尝试重新启动所有EXTRACT进程,共尝试5次;
PURGEOLDEXTRACTS:定期清理trail文件设置:本处设置表示对于超过3天的trail文件进行删除。
LAGREPORT、LAGINFO、LAGCRITICAL:
定义数据延迟的预警机制:本处设置表示MGR进程每隔1小时检查EXTRACT的延迟情况,如果超过了30分钟就把延迟作为信息记录到错误日志中,如果延迟超过了45分钟,则把它作为警告写到错误日志中。

3) 管理MGR进程
GGSCI> START MGR
GGSCI> info MGR
GGSCI> stop MGR

到此为止源端库和目标库的安装配置都是一致的,接下来为两端配置ogg管理进程会有所差别
3.3创建相关的ogg进程
1)查看 mgr 进程状态,确保为 running
源端:
GGSCI> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
目的端:
GGSCI> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING

2)查看 mgr 参数配置
源端:
GGSCI> view param mgr
port 7809
目的端:
GGSCI> view param mgr
port 7809
3)创建源端ext进程,tail文件,data_pump进程
源端:
GGSCI> add ext exta, tranlog, begin now
register extract exta database
alter extract exta, upgrade integrated tranlog, begin now

EXTRACT added.
GGSCI> add exttrail /ogg/app/ogg/dirdat/la, ext exta, MEGABYTES 20 – 创建源trail文件

EXTTRAIL added.
GGSCI> add extract dpea, EXTTRAILSOURCE /ogg/app/ogg/dirdat/la – 创建data_pump进程

EXTRACT added.
GGSCI> add rmttrail /ogg/app /ogg/dirdat/ra, ext dpea, MEGABYTES 20 --创建目标端trail文件

RMTTRAIL added.
GGSCI> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT STOPPED DPEA 00:00:00 00:02:48
EXTRACT STOPPED EXTA 00:00:00 00:09:36
GGSCI> edit param exta
–exta文件添加内容显示如下
EXTRACT exta
setenv (NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
setenv (ORACLE_SID = zzw)
USERID ggadm, PASSWORD 123456
EXTTRAIL /ogg/app/ogg/dirdat/la
dynamicresolution
table ggadm.;
GGSCI> start exta
Sending START request to MANAGER …
EXTRACT EXTA starting
GGSCI> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT STOPPED DPEA 00:00:00 01:40:39
EXTRACT RUNNING EXTA 01:47:26 00:00:01
GGSCI> edit param dpea
–dpea文件添加内容显示如下
EXTRACT dpea
setenv (NSL_LANG = AMERICAN_AMERICA.ZHS16GBK )
passthru
rmthost 192.168.132.144, mgrport 7809, compress
rmttrail /ogg/app/ogg/dirdat/ra
dynamicresolution
table ggadm.
,target ggadm.*;
GGSCI> start dpea
Sending START request to MANAGER …
EXTRACT DPEA starting
GGSCI> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING DPEA 00:00:00 00:00:00
EXTRACT RUNNING EXTA 00:00:00 00:00:04
4)创建目标数据库的replicat进程
目的端:
配置globals参数(目标)
–For Performance Monitor:
ENABLEMONITORING
CHECKPOINTTABLE ggadm.checkpoint
– For DDL :
GGSCHEMA ggadm

add checkpointtable ggadm.checkpoint

GGSCI> add rep repa, exttrail /home/oracle/ogg/dirdat/ra,checkpointtable ggadm.checkpoint
REPLICAT added.
add replicat repa, integrated exttrail /app/ogg/dirdat/ra
,checkpointtable ggadm.checkpoint
GGSCI> edit param repa
– repa文件添加内容显示如下
replicat repa
setenv (NLS_LANG = AMERICAN_AMERICA.ZHS16GBK)
setenv (ORACLE_SID = zzw)
USERID ggadm, PASSWORD 123456
reperror default,abend
discardfile /ogg/app/ogg/dirdat/repa.dsc,append, megabytes 10
assumetargetdefs
dynamicresolution
table ggadm.,target ggadm.;
GGSCI> start repa
Sending START request to MANAGER …
REPLICAT REPA starting
GGSCI> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
REPLICAT RUNNING REPA 00:00:00 00:00:01

5)创建成功后可以自己做下测试
源端:
SQL> select * from zz;
ID

1
2
SQL> insert into zz values(3);
1 row created.
SQL> commit;
Commit complete.
目标端:
SQL> select * from zz;
ID

1
2
3
4.参考资料
https://www.shangmayuan.com/a/6d5b1abd7752464f91968419.html
集成模式和经典模式:
https://blog.csdn.net/zzt_2009/article/details/105581190
https://www.cnblogs.com/arcer/p/4418527.html
http://www.oracle-scn.com/oracle-goldengate-integrated-replicat/
http://blog.sina.com.cn/s/blog_8317516b0102welz.html
https://www.cnblogs.com/ZeroTiny/p/9184110.html
http://blog.itpub.net/205377/viewspace-2138536/

你可能感兴趣的:(OGG单实例下安装配置)