Install Oracle GoldenGate 19c on Linux

In this article, I will demonstrate how to install Oracle GoldenGate 19c on Linux Server. We will follow these Steps:

  • Download GoldenGate Binary
  • Installation Pre-Task
  • Installation with GUI Mode

Download GoldenGate Binary/Software:

Oracle URL to download the Software: https://edelivery.oracle.com/osdc/faces/SoftwareDelivery

Select the Platforms / Language:

Choose the right software you needed and download:

Installation Pre-Task:

Move the software to server (can be used the WinSCP)

[oracle@orcl19c goldengate]$ ls -lrt V983658-01.zip
-rw-r--r--. 1 oracle oinstall 556240981 Nov 10 12:53 V983658-01.zip
[oracle@orcl19c goldengate]$ unzip V983658-01.zip
Archive:  V983658-01.zip

[oracle@orcl19c goldengate]$ ls -lrt
total 543540
-rw-r--r--. 1 oracle oinstall      1413 May 29  2019 OGG-19.1.0.0-README.txt
drwxr-xr-x. 3 oracle oinstall        18 Oct 18  2019 fbo_ggs_Linux_x64_shiphome
-rw-r--r--. 1 oracle oinstall    332523 Oct 21  2019 OGG_WinUnix_Rel_Notes_19.1.0.0.4.pdf

[oracle@orcl19c Disk1]$ pwd
/u01/goldengate/fbo_ggs_Linux_x64_shiphome/Disk1
[oracle@orcl19c Disk1]$ ls -lrt
total 12
drwxr-xr-x.  4 oracle oinstall 4096 Oct 18  2019 install
drwxr-xr-x. 12 oracle oinstall 4096 Oct 18  2019 stage
-rwxr-xr-x.  1 oracle oinstall  918 Oct 18  2019 runInstaller
drwxrwxr-x.  2 oracle oinstall   24 Oct 18  2019 response

Installation with GUI mode:

Run Installation:

Select the Database version which will be part of replication:

Provide the location where GG software will be installed:

Verify all information and client install to start installation:

GoldenGate installation is progressing:

GoldenGate installation completed:

After installation:

[oracle@orcl19c ogg19]$ pwd
/u01/goldengate/ogg19
[oracle@orcl19c ogg19]$ ls
archivelog.sql         ddl_session1.sql                 emsclnt                       libggutil.so             oraInst.loc
bcpfmt.tpl             ddl_session.sql                  extract                       libicudata.so.62         oui
bcrypt.txt             ddl_setup.sql                    freeBSD.txt                   libicui18n.so.62         params.sql
cachefiledump          ddl_status.sql                   ggcmd                         libicuuc.so.62           pmsrvr
cfgtoollogs            ddl_staymetadata_off.sql         ggMessage.dat                 liblmdb.so               prvtclkm.plb
checkprm               ddl_staymetadata_on.sql          ggparam.dat                   libPocoCrypto.so.60      prvtlmpg.plb
chkpt_ora_create.sql   ddl_tracelevel.sql               ggsci                         libPocoFoundation.so.60  prvtlmpg_uninstall.sql
convchk                ddl_trace_off.sql                healthcheck                   libPocoJSON.so.60        remove_seq.sql
convprm                ddl_trace_on.sql                 help.txt                      libPocoNet.so.60         replicat
crypto                 defgen                           install                       libPocoNetSSL.so.60      retrace
db2cntl.tpl            deinstall                        inventory                     libPocoUtil.so.60        role_setup.sql
db_upgrade             demo_more_ora_create.sql         jdk                           libPocoXML.so.60         sequence.sql
ddl_cleartrace.sql     demo_more_ora_insert.sql         keygen                        libstdc++.so.6           server
ddl_create.sql         demo_ora_create.sql              label.sql                     libudt.so                SQLDataTypes.h
ddl_ddl2file.sql       demo_ora_insert.sql              libantlr3c.so                 libxerces-c-3.2.so       sqlldr.tpl
ddl_disable.sql        demo_ora_lob_create.sql          libboost_system-mt.so.1.67.0  logdump                  srvm
ddl_enable.sql         demo_ora_misc.sql                libdb-6.1.so                  marker_remove.sql        tcperrs
ddl_filter.sql         demo_ora_pk_befores_create.sql   libgcc_s.so.1                 marker_setup.sql         ucharset.h
ddl_ora10.sql          demo_ora_pk_befores_insert.sql   libgglog.so                   marker_status.sql        ulg.sql
ddl_ora10upCommon.sql  demo_ora_pk_befores_updates.sql  libggnnzitp.so                mgr                      UserExitExamples
ddl_ora11.sql          diagnostics                      libggparam.so                 noop.sql                 usrdecs.h
ddl_ora9.sql           diretc                           libggperf.so                  notices.txt              version4j.jar
ddl_pin.sql            dirout                           libggrepo.so                  oggerr                   zlib.txt

Verify Oracle GoldenGate libraries are linked properly:

[oracle@orcl19c ogg19]$ pwd
/u01/goldengate/ogg19
[oracle@orcl19c ogg19]$ . oraenv
ORACLE_SID = [orcl] ?
The Oracle base remains unchanged with value /u01/app/oracle

[oracle@orcl19c ogg19]$ ldd mgr
        linux-vdso.so.1 =>  (0x00007fff955ab000)
        librt.so.1 => /lib64/librt.so.1 (0x00007f730fc4e000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f730fa49000)
        libgglog.so => /u01/goldengate/ogg19/./libgglog.so (0x00007f730f6e3000)
        libggutil.so => /u01/goldengate/ogg19/./libggutil.so (0x00007f730f4c7000)
        libggrepo.so => /u01/goldengate/ogg19/./libggrepo.so (0x00007f730f20c000)
        libdb-6.1.so => /u01/goldengate/ogg19/./libdb-6.1.so (0x00007f730edf6000)
        liblmdb.so => /u01/goldengate/ogg19/./liblmdb.so (0x00007f730ebe1000)
        libggperf.so => /u01/goldengate/ogg19/./libggperf.so (0x00007f730e9ae000)
        libggparam.so => /u01/goldengate/ogg19/./libggparam.so (0x00007f730d295000)
        libicui18n.so.62 => /u01/goldengate/ogg19/./libicui18n.so.62 (0x00007f730cdb0000)
        libicuuc.so.62 => /u01/goldengate/ogg19/./libicuuc.so.62 (0x00007f730c9ae000)
        libicudata.so.62 => /u01/goldengate/ogg19/./libicudata.so.62 (0x00007f730a996000)
        libxerces-c-3.2.so => /u01/goldengate/ogg19/./libxerces-c-3.2.so (0x00007f730a322000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f730a105000)
        libantlr3c.so => /u01/goldengate/ogg19/./libantlr3c.so (0x00007f7309eea000)
        libnnz19.so => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libnnz19.so (0x00007f73097a2000)
        libclntsh.so.19.1 => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libclntsh.so.19.1 (0x00007f7305793000)
        libclntshcore.so.19.1 => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libclntshcore.so.19.1 (0x00007f73051f3000)
        libggnnzitp.so => /u01/goldengate/ogg19/./libggnnzitp.so (0x00007f73046dc000)
        libstdc++.so.6 => /u01/goldengate/ogg19/./libstdc++.so.6 (0x00007f7304344000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f7304042000)
        libgcc_s.so.1 => /u01/goldengate/ogg19/./libgcc_s.so.1 (0x00007f7303e2c000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f7303a6c000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f7310891000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f7303852000)
        libaio.so.1 => /lib64/libaio.so.1 (0x00007f7303650000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f7303436000)
		
[oracle@orcl19c ogg19]$ ldd extract
        linux-vdso.so.1 =>  (0x00007fff34cf7000)
        librt.so.1 => /lib64/librt.so.1 (0x00007fba464a0000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fba4629b000)
        libgglog.so => /u01/goldengate/ogg19/./libgglog.so (0x00007fba45f35000)
        libggutil.so => /u01/goldengate/ogg19/./libggutil.so (0x00007fba45d19000)
        libggrepo.so => /u01/goldengate/ogg19/./libggrepo.so (0x00007fba45a5e000)
        libdb-6.1.so => /u01/goldengate/ogg19/./libdb-6.1.so (0x00007fba45648000)
        liblmdb.so => /u01/goldengate/ogg19/./liblmdb.so (0x00007fba45433000)
        libggperf.so => /u01/goldengate/ogg19/./libggperf.so (0x00007fba45200000)
        libggparam.so => /u01/goldengate/ogg19/./libggparam.so (0x00007fba43ae7000)
        libicui18n.so.62 => /u01/goldengate/ogg19/./libicui18n.so.62 (0x00007fba43602000)
        libicuuc.so.62 => /u01/goldengate/ogg19/./libicuuc.so.62 (0x00007fba43200000)
        libicudata.so.62 => /u01/goldengate/ogg19/./libicudata.so.62 (0x00007fba411e8000)
        libxerces-c-3.2.so => /u01/goldengate/ogg19/./libxerces-c-3.2.so (0x00007fba40b74000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fba40957000)
        libantlr3c.so => /u01/goldengate/ogg19/./libantlr3c.so (0x00007fba4073c000)
        libnnz19.so => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libnnz19.so (0x00007fba3fff4000)
        libclntsh.so.19.1 => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libclntsh.so.19.1 (0x00007fba3bfe5000)
        libclntshcore.so.19.1 => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libclntshcore.so.19.1 (0x00007fba3ba45000)
        libggnnzitp.so => /u01/goldengate/ogg19/./libggnnzitp.so (0x00007fba3af2e000)
        libstdc++.so.6 => /u01/goldengate/ogg19/./libstdc++.so.6 (0x00007fba3ab96000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fba3a894000)
        libgcc_s.so.1 => /u01/goldengate/ogg19/./libgcc_s.so.1 (0x00007fba3a67e000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fba3a2be000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fba48574000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fba3a0a4000)
        libaio.so.1 => /lib64/libaio.so.1 (0x00007fba39ea2000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fba39c88000)
		
[oracle@orcl19c ogg19]$ ldd replicat
        linux-vdso.so.1 =>  (0x00007ffff35fe000)
        librt.so.1 => /lib64/librt.so.1 (0x00007fa92c554000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fa92c34f000)
        libgglog.so => /u01/goldengate/ogg19/./libgglog.so (0x00007fa92bfe9000)
        libggutil.so => /u01/goldengate/ogg19/./libggutil.so (0x00007fa92bdcd000)
        libggrepo.so => /u01/goldengate/ogg19/./libggrepo.so (0x00007fa92bb12000)
        libdb-6.1.so => /u01/goldengate/ogg19/./libdb-6.1.so (0x00007fa92b6fc000)
        liblmdb.so => /u01/goldengate/ogg19/./liblmdb.so (0x00007fa92b4e7000)
        libggperf.so => /u01/goldengate/ogg19/./libggperf.so (0x00007fa92b2b4000)
        libggparam.so => /u01/goldengate/ogg19/./libggparam.so (0x00007fa929b9b000)
        libicui18n.so.62 => /u01/goldengate/ogg19/./libicui18n.so.62 (0x00007fa9296b6000)
        libicuuc.so.62 => /u01/goldengate/ogg19/./libicuuc.so.62 (0x00007fa9292b4000)
        libicudata.so.62 => /u01/goldengate/ogg19/./libicudata.so.62 (0x00007fa92729c000)
        libxerces-c-3.2.so => /u01/goldengate/ogg19/./libxerces-c-3.2.so (0x00007fa926c28000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa926a0b000)
        libantlr3c.so => /u01/goldengate/ogg19/./libantlr3c.so (0x00007fa9267f0000)
        libnnz19.so => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libnnz19.so (0x00007fa9260a8000)
        libclntsh.so.19.1 => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libclntsh.so.19.1 (0x00007fa922099000)
        libclntshcore.so.19.1 => /u01/app/oracle/product/19.0.0/dbhome_1/lib/libclntshcore.so.19.1 (0x00007fa921af9000)
        libggnnzitp.so => /u01/goldengate/ogg19/./libggnnzitp.so (0x00007fa920fe2000)
        libstdc++.so.6 => /u01/goldengate/ogg19/./libstdc++.so.6 (0x00007fa920c4a000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fa920948000)
        libgcc_s.so.1 => /u01/goldengate/ogg19/./libgcc_s.so.1 (0x00007fa920732000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fa920372000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fa92e495000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fa920158000)
        libaio.so.1 => /lib64/libaio.so.1 (0x00007fa91ff56000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fa91fd3c000)

Run GGSCI command-line tools:

Set environment variable:

[oracle@orcl19c ~]$ pwd
/home/oracle
[oracle@orcl19c ~]$ cat OGG19c.env
OGG19C=/u01/goldengate/ogg19; export OGG19C
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1;  export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$PATH:/u01/goldengate/ogg19; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/u01/goldengate/ogg19; export LD_LIBRARY_PATH
alias ggsci='cd $OGG19C; ./ggsci'

[oracle@orcl19c ~]$ . ./OGG19c.env
[oracle@orcl19c ~]$ 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 (C) 1995, 2019, Oracle and/or its affiliates. All rights reserved.



GGSCI (orcl19c.localdomain) 1>

[oracle@orcl19c ogg19]$ . oraenv
ORACLE_SID = [oracle] ? orcl
The Oracle base has been set to /u01/app/oracle

[oracle@orcl19c ogg19]$ ./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 (C) 1995, 2019, Oracle and/or its affiliates. All rights reserved.



GGSCI (orcl19c.localdomain) 1> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     STOPPED


GGSCI (orcl19c.localdomain) 2> view param mgr
ERROR: Directory /u01/goldengate/ogg19/dirprm does not exist yet (use CREATE SUBDIRS).

Create sub directories:

GGSCI (orcl19c.localdomain) 3> CREATE SUBDIRS

Creating subdirectories under current directory /u01/goldengate/ogg19

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

Create manager process and start:

GGSCI (orcl19c.localdomain) 1> view param mgr

port 7809
DYNAMICPORTLIST 7809-7820
DYNAMICPORTREASSIGNDELAY 30


GGSCI (orcl19c.localdomain) 2> start mgr
Manager started.


GGSCI (orcl19c.localdomain) 3> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING