Guenadi N Jilevski's Oracle BLOG

Oracle RAC, DG, EBS, DR and HA DBA BLOG

Installing Oracle GoldenGate for (Oracle 11g on Linux)

Installing Oracle GoldenGate for (Oracle 11g on Linux)

This example will illustrate the installation of Oracle GoldenGate on an RH 5 platform. GoldenGate software is also available on OTN but for our platform we need to download the required software from the Oracle E-Delivery web site.

Select the Product Pack “Oracle Fusion Middleware” and the platform Linux X86-64.

Then select “Oracle GoldenGate on Oracle Media Pack for Linux x86-64″ and since we are installing this for an Oracle 11g database, we download “Oracle GoldenGate V10.4.0.x for Oracle 11g 64bit on RedHat 5.0″

$ unzip V18159-01.zip
Archive: V18159-01.zip
inflating: ggs_redhatAS50_x64_ora11g_64bit_v10.4.0.19_002.tar

$tar -xvof ggs_redhatAS50_x64_ora11g_64bit_v10.4.0.19_002.tar

$ export PATH=$PATH:/u01/oracle/ggs

$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/u01/oracle/ggs

$ ggsci

GGSCI (linuxoel54.gj.com) 1>

GGSCI (linuxoel54.gj.com) 1> CREATE SUBDIRS

Creating subdirectories under current directory /u01/app/oracle/product/11.2.0/db_1

Parameter files /u01/oracle/ggs/dirprm: created

Report files /u01/oracle/ggs/dirrpt: created

Checkpoint files /u01/oracle/ggs/dirchk: created

Process status files /u01/oracle/ggs/dirpcs: created

SQL script files /u01/oracle/ggs/dirsql: created

Database definitions files /u01/oracle/ggs/dirdef: created

Extract data files /u01/oracle/ggs/dirdat: created

Temporary files /u01/oracle/ggs/dirtmp: created

Veridata files /u01/oracle/ggs/dirver: created
Veridata Lock files /u01/oracle/ggs/dirver/lock: created

Veridata Out-Of-Sync files /u01/oracle/ggs/dirver/oos: created

Veridata Out-Of-Sync XML files /u01/oracle/ggs/dirver/oosxml: created

Veridata Parameter files /u01/oracle/ggs/dirver/params: created
Veridata Report files /u01/oracle/ggs/dirver/report: created
Veridata Status files /u01/oracle/ggs/dirver/status: created
Veridata Trace files /u01/oracle/ggs/dirver/trace: created

Stdout files /u01/oracle/ggs/dirout: created

We then need to create a database user which will be used by the GoldenGate Manager, Extract and Replicat processes. We can create individual users for each process or configure just a common user – in our case we will create the one user GGS and grant it the required privileges.

SQL> create tablespace ggs_data
2 datafile ‘/u01/oradata/gavin/ggs_data01.dbf’ size 200m;

SQL> create user ggs identified by ggs
2 default tablespace ggs_data
3 temporary tablespace temp;

User created.

SQL> grant connect,resource to ggs;

Grant succeeded.

SQL> grant select any dictionary, select any table to ggs;

Grant succeeded.

SQL> grant create table to ggs;

Grant succeeded.

SQL> grant flashback any table to ggs;

Grant succeeded.

SQL> grant execute on dbms_flashback to ggs;

Grant succeeded.

SQL> grant execute on utl_file to ggs;

Grant succeeded.

We can then confirm that the GoldenGate user we have just created is able to connect to the Oracle database

$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 10.4.0.19 Build 002

Linux, x64, 64bit (optimized), Oracle 11 on Sep 17 2009 23:51:28

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

GGSCI (linuxoel54.gj.com) 1> DBLOGIN USERID ggs, PASSWORD ggs
Successfully logged into database.

We also need to enable supplemental logging at the database level otherwise we will get this error when we try to start the Extract process –

2010-02-08 13:51:21 GGS ERROR 190 No minimum supplemental logging is enabled. This may cause extract process to handle key update incorrectly if key
column is not in first row piece.

2010-02-08 13:51:21 GGS ERROR 190 PROCESS ABENDING.

SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;

Database altered

February 8, 2010 - Posted by | oracle

4 Comments »

  1. Guenadi, I have a question about Flashback Data Archive tables in Goldengate replication. Are these tables usually excluded in an extract like “TABLEEXCLUDE .SYS_FBA_*”?
    What is the approach for replicating and initial load of Flash Back Data Archive tables?
    Here is my problem. I exported a user schema using Oracle DataPump, imported into destination database. GoldenGate abended saying some tables dont exist on dest. I checked tables and there were about 200 tables that were not exported because they are FBDA tables and DataPump just ignores them. So, I recreated them on source with scripts.
    So, how is this done? Source and destination have their own FBDA and these tables should not be neither recreated with scripts on dest or replicated? Or they have to be replicated with contents?

    Comment by Vladimir Grigorian | October 26, 2011 | Reply

    • Hi Vladimir,

      Sorry, I will need to look at it further as I have not dealt with GG and FDA tables. Please, at mean time have a look at

      Does Goldengate Support The New Oracle 10g Flashback Feature? [ID 966212.1]
      11g feature: Flashback Data Archive Guide. [ID 470199.1]
      Does an Expdp Point In Time Export Utilize Flashback Data Archives (FDA)? [ID 887737.1]

      Seems to me it is not a task with a quite straight forward solution…

      Regards,

      Guenadi Jilevski

      Comment by gjilevski | October 26, 2011 | Reply

      • Guenadi, thank you for your help.
        I opened a TAR on this.
        As it turns out FBDA is an internal mechanism of Oracle and should be left to database (not GG). GG should only replicate the main tables.
        Here are some points.
        1) FBDA tables by default are ignored by expdp, not exported at all.
        2) GoldenGate will replicate only DML, but not DDL dues to bug 10057848. the bug is targeted to be resolved in gg version 12.
        3) FBDA on source and destination can operate independently. They will be excluded from extract (and already ignored by expdp) by specifying user tables to replicate explicitly, by full name in extract or addiing “TABLEEXCLUDE DRPROD.SYS_FBA_*”, and .* will not work in these cases.
        BTW, I remember your name from Oracle. Saw a few internal emails from you.
        Lets keep in touch.
        Vladimir.

        Comment by Vladimir Grigorian | October 26, 2011

      • Hi Vladimir,

        I really appreciate the feedback related to the solution. The explanation makes sense. I was thinking of similar way to preload the history data in FBDA on target and suggest using GG as it works in general and was not sure if I am not missing some new functionality.

        I also remember you from Oracle you are one of the RAC & EBS experts.
        Sure I will be glad to stay in touch with you a long time Oracle expert.

        Best Regards,

        Guenadi Jilevski

        Comment by gjilevski | October 26, 2011


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: