暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Oracle GoldenGate 19.1 oracle数据库同步(一):Linux下的安装调测

原创 red_hope 2020-11-12
3770

一、OOG软件下载地址:

https://www.oracle.com/middleware/technologies/goldengate-downloads.html

选择相应的版本,进行下载。

二、准备系统环境并安装

(1)准备主机环境

OGG软件安装一般用oracle用户安装,最好使用独立目录,例如使用 /goldengate目录,因为测试环境,没有存储空间,因此使用了与oracle相同的目录,在生产环境中不建议这样使用。
新建目录:/u01/goldengate,设置为oracle:oinstall宿主。
在oracle用户的.bash_profile中增加:

export OGG_HOME=/u01/goldengate/
PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/bin/X11:/oracle/app/common/oracle/bin:$ORACLE_HOME/OPatch:$OGG_HOME/ggsoft

(2)安装

在/u01/goldengate目录下解压191004_fbo_ggs_Linux_x64_shiphome.zip,找到安装目录:/u01/goldengate/fbo_ggs_Linux_x64_shiphome/Disk1
打开xmanager 导入display变量:
export DISPLAY=192.168.198.1:0.0
./runInstaller
第一步:选择数据库版本
image.png
第二部:选择OGG_HOME及ORACLE_HOME(环境变量设置完成,自动读取),端口可以改,没有特殊要求,建议默认7809:
image.png
第三步:安装
image.png

操作范围:生产与源端均需要安装

三、数据库侧准备工作

(1)打开归档、打开强制归档,打开附加日志

打开归档、打开强制归档就不详细介绍了,dba都很熟悉,如何打开附加日志方法如下:

select SUPPLEMENTAL_LOG_DATA_MIN  from  v$database;

如归返回是NO,则需要打开,打开方法:

SQL> alter database add supplemental log data ;

该参数变为YES
附件日志需要打开,附加日志会将将主键数据或者一些不变更列的数据 记录到redolog 中,是ogg复制所需关键信息。
期中,附加日志建议源、目的均打开。归档及强制归档,源必须打开,如果同步数据压力不大,目标也建议打开。
(2)创建数据用户
源端、目标端均需要执行:

CREATE USER goldengate   IDENTIFIED BY goldengate DEFAULT TABLESPACE USERS ;
GRANT CONNECT TO g goldengate   oldengate;
GRANT ALTER ANY  TABLE TO goldengate;
GRANT ALTER SESSION TO goldengate;
GRANT CREATE SESSION TO goldengate;
GRANT FLASHBACK ANY TABLE TO goldengate;
GRANT SELECT ANY DICTIONARY TO goldengate;
GRANT SELECT ANY TABLE TO goldengate;
GRANT RESOURCE TO goldengate;
GRANT drop ANY TABLE TO goldengate;
grant create any table to goldengate;
grant insert any table to goldengate;
grant update any table to goldengate;
grant delete any table to goldengate;
grant unlimited tablespace to goldengate;

指定用户的表空间:
源端:create tablespace tbs_ogg datafile ‘+DATA’ size 100m autoextend on;
目标端:create tablespace tbs_ogg datafile ‘/u01/oggbasedata/OGGTEST/tbs_ogg01.dbf’ size 100m autoextend on;
源、目标端:alter user goldengate default tablespace tbs_ogg;

四、运行OGG 支持 DDL 脚本

一般是需要,例如源端删除表、修改表,一般需要同步到目标端,当然,运行DDL支持脚本,只是具备了这个功能,如果在同步的过程中,不打开相应参数,仍然不同步。
进入ogg安装目录:
/u01/goldengate/ggsoft
sqlplus / as sysdba
SQL> @marker_setup.sql
SQL> @ddl_setup.sql
SQL> @role_setup.sql
SQL> @ddl_enable.sql
源端、目标端均需要执行。执行的时候按照提示输入goldengate用户即可。

五、其它完善措施

在目标端要禁用如下信息:
1、禁用目标端触发器:

select 'alter trigger ' || owner || '.' || trigger_name || 'disable '
      from dba_triggers
     where owner in (’NXSOFT_YG’);

题外话:触发器和dblink这种东西,在数据库上还是少用。
2、禁用目标端有DML操作的JOB

select * from dba_jobs where SCHEMA_USER='NXSOFT_YG';

alter system set JOB_QUEUE_PROCESSES=0;

---disable scheduler job 

select job_name, owner, program_name, program_owner, state, enabled

  from dba_scheduler_jobs

 where owner not in ('SYS', 'SYSTEM');

exec dbms_scheduler.disable('xxxx');

3、禁用目标端数据库的外键和check约束

select 'alter table ' || owner || '.' || table_name ||
           ' disable constraint ' || constraint_name
      from dba_constraints
     where constraint_type in ('R', 'C')
       and owner in ('NXSOFT_YG');

目标端之所以需要禁用,是为了防止数据库重复。

六、创建ogg子目录

进入/u01/goldengate/ggsoft目录
在该目录下运行ggsic:
eoms01:/u01/goldengate/ggsoft@db> ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 19.1.0.0.4 OGGCORE_19.1.0.0.0_PLATFORMS_191017.1054_FBO
Linux, x64, 64bit (optimized), Oracle 19c on Oct 17 2019 21:16:29
Operating system character set identified as UTF-8.

Copyright © 1995, 2019, Oracle and/or its affiliates. All rights reserved.

GGSCI (eoms01) 1>
正式进入ogg命令行模式,创建子目录

GGSCI (eoms01) 1> create subdirs

Creating subdirectories under current directory /u01/goldengate/ggsoft

Parameter file                 /u01/goldengate/ggsoft/dirprm: created.
Report file                    /u01/goldengate/ggsoft/dirrpt: created.
Checkpoint file                /u01/goldengate/ggsoft/dirchk: created.
Process status files           /u01/goldengate/ggsoft/dirpcs: created.
SQL script files               /u01/goldengate/ggsoft/dirsql: created.
Database definitions files     /u01/goldengate/ggsoft/dirdef: created.
Extract data files             /u01/goldengate/ggsoft/dirdat: created.
Temporary files                /u01/goldengate/ggsoft/dirtmp: created.
Credential store files         /u01/goldengate/ggsoft/dircrd: created.
Masterkey wallet files         /u01/goldengate/ggsoft/dirwlt: created.

/u01/goldengate/ggsoft/dirdat/ex 抽取的待同步数据信息
其它几个目录信息:
Report file /u01/goldengate/ggsoft/dirrpt/EXT01.rpt
Parameter file /u01/goldengate/ggsoft/dirprm/ext01.prm
Checkpoint file /u01/goldengate/ggsoft/dirchk/EXT01.cpe
Error log /u01/goldengate/ggsoft/ggserr.log

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

评论