That’s Me

Gavin Soorma
Oracle Certified Professional
7.3, 8i, 9i,10g, 11g, 12c
11i Apps DBA OCP
10g RAC OCE
Certified GoldenGate Implementation Specialist
Oracle 11g Exadata Implementation Specialist
10g OCM
11g OCM

Feedback

6916794 hits

Thanks A MILLION for your support!

Please send me your valuable feedback and suggestions

GoldenGate Tutorial 2 – Installation (Oracle 11g on Linux)

This example will illustrate the installation of Oracle GoldenGate on an RHEL 5 platform. We had in an earlier post discussed the architecture and various components of a GoldenGate environment.

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

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 (redhat346.localdomain) 1>

GGSCI (redhat346.localdomain) 1> CREATE SUBDIRS

Creating subdirectories under current directory /u01/app/oracle/product/11.2.0/dbhome_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_OWNER and grant it the required privileges.

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

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

User created.

SQL> grant connect,resource to ggs_owner;

Grant succeeded.

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

Grant succeeded.

SQL> grant create table to ggs_owner;

Grant succeeded.

SQL> grant flashback any table to ggs_owner;

Grant succeeded.

SQL> grant execute on dbms_flashback to ggs_owner;

Grant succeeded.

SQL> grant execute on utl_file to ggs_owner;

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
AIX 5L, ppc, 64bit (optimized), Oracle 11 on Sep 17 2009 23:54:16

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

GGSCI (devu007) 1> DBLOGIN USERID ggs_owner, PASSWORD ggs_owner
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

Coming Next! – configuring the Manager, Extract and Replicat processes and setting up online Change Synchronization

14 comments to GoldenGate Tutorial 2 – Installation (Oracle 11g on Linux)

  • surya

    Hi Gavin,

    The goldengate tutorial is great.It helped me in configuring the goldengate but when i tried to start the extract process its showing log read checkpoint not available and when i checked the log its showing unrecognized parameter (mgr port).

    1)I have a question like we need to configure any listener,client configuration.

    2)how to configure the manager port.

    3)When the data is moved from one db to another by which means its going to travel like using lsn,tns etc

    Thanks Surya.

  • sowmya

    Hi Gavin,

    the tutorial is very simple and very easy to understand.. Good work!!!!!!! and thanks for the same :)

    Thanks,
    Sowmya.

  • Ravikumar

    I will try to answer 2 and 3.

    2) ggsci>edit params mgr
    PORT
    should be any one of the available port.

    3) GoldenGate uses Trail file to transfer data from one database to another. The trail will be in UDF(Universal Data Format). The content of the trail can be viewed using a utility called LOGDUMP.

    Thanks,
    Ravi

  • HI Ravi – thanks for the good additional info – regards

  • Rather than doing this:

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

    to get around the No supplemental logging message, the following may be better:

    Login to SQL*Plus as a user with ALTER SYSTEM privileges
    2. Enable minimal supplemental logging by executing the following command:
    a. ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
    3. To ensure the redo and archive logs contain supplemental log data , switch the
    logs by executing the command:
    a. ALTER SYSTEM SWITCH LOGFILE;
    4. Verify that supplemental logging is enabled at the database level via the command:
    a. SELECT SUPPLEMENTAL_LOG_DATA_MIN FROM V$DATABASE;
    b. The output of the query must be YES or IMPLICIT

  • Hi David – that is good info …cheers

  • Great tutorial but i ahve some problems with it.
    OS = Oracle Enterprise Linux
    Database = 11g R2
    Not Sure About Golden Gate Version.(But think its the problem since source can login with no problems.)

    In my target OS i get this error.(Its ok in my source OS)

    GGSCI (target) 2> DBLOGIN USERID ggs_owner, PASSWORD ggs_owner
    ERROR: Failed to open data source for user GGS_OWNER.

    Waiting for an answer.
    Thx.

  • The previous post says = Not Sure About Golden Gate Version.(But think its the problem since source can login with no problems.)

    it should be = Not Sure About Golden Gate Version.(But think its NOT the problem since source can login with no problems.)
    Sorry about it:)

  • ::’ I am very thankful to this topic because it really gives great information `..

  • Niraj Sinha

    Hi,
    Its really nice post.I want to download Golden Gate 32bit for linux or Goldengate for AIX(POWER). I googled it and every where it is showing to download it from edelivery.oracle.com .But it is not allowing me to download . Though I have valid License for Oracle.

    Can you help me on this please, where to download and how.

    Regards
    -Niraj

  • Michael

    Do you guys use oracle OS id to install goldengate, or setup a separate OS id to do it, such ggate?

  • Toby

    The command line:

    GGSCI (target) 2> DBLOGIN USERID ggs_owner, PASSWORD ggs_owner

    was giving
    ERROR: Unable to connect to database using user ggs_owner. Please check privileg
    es.
    ORA-12560: TNS:protocol adapter error.

    Qualifying the login line with the instance resolved the issue.

    DBLOGIN USERID ggs_owner@your_oracle_instance, PASSWORD ggs_owner

  • Hi – what platform are you running this on? Before launching GoldenGate ensure that the environment has been set up for the Oracle database on that server and you are able to connect to the database by just providong the username and the password without the connect string

  • Vinit

    Gavin, appreciate your inputs and efforts on the Golden Gate tutorial. I just wanted to pass on some info on one of the most common errors with Golden Gate as posted earlier.

    On Oracle 10g (10.2.0.4) and Golden Gate Version 11.1.1.1 on Linux

    GGSCI (OracleVM2) 1> dblogin userid ggate password ggate
    Successfully logged into database.

    GGSCI (OracleVM2) 2> dblogin userid ggate, password ggate
    Successfully logged into database.

    GGSCI (OracleVM2) 3> dblogin userid ggate, password ggate;
    ERROR: Failed to open data source for user GGATE.

    GGSCI (OracleVM2) 4> dblogin userid ggate, password ggate
    Successfully logged into database.

    Oracle 11g (11.2.0.1) with Golden Gate Version 11.2.1.0.0 on Linux

    GGSCI (OracleVM1) 10> dblogin userid ggate password ggate
    ERROR: Unable to connect to database using user ggate. Please check privileges.
    ORA-00942: table or view does not exist.

    GGSCI (OracleVM1) 11> dblogin userid ggate, password ggate;
    Successfully logged into database.

    GGSCI (OracleVM1) 12> dblogin userid ggate, password ggate
    ERROR: Unable to connect to database using user ggate. Please check privileges.
    ORA-00942: table or view does not exist.

    GGSCI (OracleVM1) 13> dblogin userid ggate password ggate;
    Successfully logged into database.

    Based on the above test,there seems to have been a slight change with the syntax ( semicolon is mandatory in the later version of Golden Gate) for execution.
    Hope this helps.

    Regards
    Vinit

Leave a Reply

  

  

  

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>