How to Install oracle Golden Gate on UNIX


In this post we’ll cover step by step approach for installing Golden Gate Software on both Windows based and Unix based operating system. Below are some requirements that should be met before installing the Golden Gate software:-

Memory Requirements

At least between 25 and 55 Mb of RAM memory is required for each GoldenGate Replicat and Extract process. Oracle Goldengate supports up to 300 concurrent processes for Extract and Replicat per Goldengate instance. As a rule of thumb, you will need to take into consideration that at least 1–2 Extract processes and multiple Replicat processes will be required in addition to manager processes for a basic Oracle Goldengate installation. The best way to assess total memory requirement is to run the GGSCI command to view the current report file and to examine the PROCESS AVAIL VM FROM OS (min) to determine if you have sufficient swap memory for your platform.

Disk Space Requirements

Following are some things you should do to ensure having enough disk space to support your Goldengate replication needs:

• Allocate at least 50–150 MB of disk space for the Oracle GoldenGate software binaries.
• Allocate 40 MB of disk space per instance of Goldengate for working directories and files per server. For a basic configuration with Oracle Goldengate, you will need to allocate 40 MB on the source and 40 MB on the target system for a total requirement of 80 MB of disk space.
• Allocate sufficient disk space to temporary files to accommodate GoldenGate operations. By default, Goldengate stores temporary files in the dirtmp directory under the default installation directory. A good rule of thumb to use for temp file space is around 10 GB of disk space.
• Plan on at least 10 MB per trail file. As a rule of thumb, we recommend that you start with at least 1 GB of disk space allocated per system for trail files. Alternatively, use the following formula that Oracle provides to determine the amount of disk space to set aside:
[log volume in one hour] x [number of hours downtime] x 0.4 = trail disk space.

One way to calculate the total amount required for trail file space is by querying the V$ARCHIVED_LOG view from within the source Oracle database. The following query shows you how to do so:

select trunc(COMPLETION_TIME),count(*)*100 size_in_MB
from v$archived_log
group by trunc(COMPLETION_TIME);
TRUNC(COM SIZE_IN_MB
--------- ----------
15-MAY-11 500

Run tests after installing Goldengate to measure your specific transaction mix and
load, and to gauge the total disk space required for trail files.

Network Requirements

Since Oracle Goldengate software operates between source and target systems over networks, you must configure TCP/IP networking to accommodate all hosts within DNS to include host names that will be included in the Oracle Goldengate infrastructure deployed. In the event of firewalls, hosts must be allowed to send and receive data for open ports that the manager, Extract, and Replicat processes require access to in order to send and receive data. This range of ports must be allocated for the Goldengate environments. Also allocate ports for Goldengate manager, Extract, and Replicat processes. By default, manager uses port 7840. The recommendation is that you keep this port available. In addition, keep a record of ports allocated to Goldengate processes to avoid port conflicts.

Operating System Requirements

Linux or UNIX:

• Grant read and write privileges for the operating system (OS) account used to install the Oracle Goldengate software.
• Place the Oracle Goldengate software on a shared disk in a clustered environment, or on a shared clustered filesystem that all cluster nodes have access to.
• Install from an operating and database system account that has read/write

Installation

I assume that you have downloaded the software by now, I have downloaded Oracle GoldenGate V11.2.1.0.1 for Oracle 11g on Linux x86. Now lets proceed with the installation:-

Step 1:- Create GoldenGate directory and copy the downloaded file.

mkdir /u01/app/oracle/product/gg
cp V32409-01.zip /u01/app/oracle/product/gg/
cd /u01/app/oracle/product/gg/

Step 2:- Unzip the file.

unzip V32409-01.zip
$ls
fbo_ggs_Linux_x86_ora11g_32bit.tar
Oracle GoldenGate 11.2.1.0.1 README.doc
V32409-01.zip
OGG_WinUnix_Rel_Notes_11.2.1.0.1.pdf
Oracle GoldenGate 11.2.1.0.1 README.txt

Step 3:- Untar the following tar ball

tar -xf fbo_ggs_Linux_x86_ora11g_32bit.tar
ls
bcpfmt.tpl defgen libxml2.txt
bcrypt.txt demo_more_ora_create.sql logdump
cfg demo_more_ora_insert.sql marker_remove.sql
chkpt_ora_create.sql demo_ora_create.sql marker_setup.sql
cobgen demo_ora_insert.sql marker_status.sql
convchk demo_ora_lob_create.sql mgr
db2cntl.tpl demo_ora_misc.sql notices.txt
ddl_cleartrace.sql demo_ora_pk_befores_create.sql oggerr
ddlcob demo_ora_pk_befores_insert.sql OGG_WinUnix_Rel_Notes_11.2.1.0.1.pdf
ddl_ddl2file.sql demo_ora_pk_befores_updates.sql Oracle GoldenGate 11.2.1.0.1 README.doc
ddl_disable.sql dirjar Oracle GoldenGate 11.2.1.0.1 README.txt
ddl_enable.sql dirprm params.sql
ddl_filter.sql emsclnt prvtclkm.plb
ddl_nopurgeRecyclebin.sql extract pw_agent_util.sh
ddl_ora10.sql fbo_ggs_Linux_x86_ora11g_32bit.tar remove_seq.sql
ddl_ora10upCommon.sql freeBSD.txt replicat
ddl_ora11.sql ggcmd retrace
ddl_ora9.sql ggMessage.dat reverse
ddl_pin.sql ggsci role_setup.sql
ddl_purgeRecyclebin.sql help.txt sequence.sql
ddl_remove.sql jagent.sh server
ddl_session1.sql keygen sqlldr.tpl
ddl_session.sql libantlr3c.so tcperrs
ddl_setup.sql libdb-5.2.so ucharset.h
ddl_status.sql libgglog.so ulg.sql
ddl_staymetadata_off.sql libggrepo.so UserExitExamples
ddl_staymetadata_on.sql libicudata.so.38 usrdecs.h
ddl_tracelevel.sql libicui18n.so.38 V32409-01.zip
ddl_trace_off.sql libicuuc.so.38 zlib.txt
ddl_trace_on.sql libxerces-c.so.28

Step 4:- Set the LD_LIBRARY_PATH variable as

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/u01/app/oracle/product/gg

Step 5:- Run the GGSCI and create the subdirs

$ ./ggsci

Copyright (C) 1995, 2012, Oracle and/or its affiliates. All rights reserved.

GGSCI 1> create subdirs
Creating subdirectories under current directory /u01/app/oracle/product/gg
Parameter files /u01/app/oracle/product/gg/dirprm: already exists
Report files /u01/app/oracle/product/gg/dirrpt: created
Checkpoint files /u01/app/oracle/product/gg/dirchk: created
Process status files /u01/app/oracle/product/gg/dirpcs: created
SQL script files /u01/app/oracle/product/gg/dirsql: created
Database definitions files /u01/app/oracle/product/gg/dirdef: created
Extract data files /u01/app/oracle/product/gg/dirdat: created
Temporary files /u01/app/oracle/product/gg/dirtmp: created
Stdout files /u01/app/oracle/product/gg/dirout: created

GGSCI 2> exit

Thats it, GoldenGate is installed, that is why Oracle has decided to deprecate all other replication methodologies like Oracle Streams, Oracle CDC and has recommended GoldenGate to use instead, not only because of its super easy super friendly interface but also because the GG code is far better than Streams or CDC and has vast usage. After successful installation if you want to set up replication and test GG, take a look on my post (https://nitishanandsrivastava.wordpress.com/oracle-goldengate/setting-up-gg-replication/)

I hope this article helps you in installing the GoldenGate software in your environment, if you face any issues or notice anything weird during installation process please comment below.

Related Articles:-

Oracle GoldenGate Architecture

Oracle GoldenGate Installation

Oracle GoldenGate Replication Setup STEP by STEP

4 thoughts on “How to Install oracle Golden Gate on UNIX

  1. Thanks for your blog. It was very information. I have one new requirement that i need help. I have a Source that stores a list of credit card information. Due to PCI compliance we are asked to research if thre is a way to create a staging server in the source and dump the trail files in the staging server and then send data to Target. As per PCI direct connection is not allowed from source to target, if source has sensitvit information like creditcard.

    Like

    • Hi Praveen,

      Before proposing the solution for your env. I need to know your env. in a bit more detail. Can you provide details of your Source & Target and what exactly you want to hide (Is it just a column or some tables?).

      More details I have more appropriate solution I can propose.

      Like

  2. I have 2 node RAC cluster but file system for golden gate installation is not shared and visible from one node only.
    what would be the implications if i proceed with GG installation on one node only in RAC environment ?

    Like

  3. Hi Nitish,
    I have been trying to setup goldengate in two different server. I am coming across this error:
    OGG-01224 TCP/IP error 111 (Connection refused), e
    ndpoint: xxx.xxx.xx.xx:7810.
    Ping to both ip is working fine. Manager in both server are running, Extract in Source is running and Replicat in Target is also running. But when I try to start datapump, I am coming across the error. I am quite sure, I have some glitch in Network configuration…..Could you help me.

    Like

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.