Friday, April 22, 2016

ggsci: error while loading shared libraries: libnnz12.so

[gguser@Linux03 OGGHOME]$ ggsci
ggsci: error while loading shared libraries: libnnz12.so: cannot open shared object file: No such file or directory


ONE REASON THIS CAN HAPPEN IS IF GGSCI CANT FIND/ACCESS libnnz12.so FILE :

[gguser@Linux03 OGGHOME]$ cd $ORACLE_HOME

[gguser@Linux03 db_1]$ cd lib
[gguser@Linux03 lib]$ ls -ll libnnz12.so
-rw-r--r--. 1 oracle oracle 6213011 Jun 18  2014 libnnz12.so

Note: Sometimes it can also be missing or wrong permissions on files.



***************************************************************
IMPORTANT PATH SETTINGS TO CHECK FOR :

***************************************************************

$ export OGGHOME=/u01/app/OGGHOME        ### Where OGGHOME is where the GG                                                                                                             binaries are installed
$ export PATH=$PATH:$OGGHOME 
$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$OGGHOME


Note : There is another way to deal te same problem is to create a symbolic link to this file libnnz12 under ORACLE_HOME/lib


CHECK IF THE PATHS ARE SET CORRECT, IN MY CASE MY ORACLE HOME WAS NOT SET RIGHT. WHICH MADE DEPENDENT PATHS FAIL:

[gguser@Linux03 OGGHOME]$ echo $ORACLE_HOME
/u01/app/oracle/product/12.1.0.1/db_1

[gguser@Linux03 OGGHOME]$ cd $ORACLE_HOME
bash: cd: /u01/app/oracle/product/12.1.0.1/db_1: No such file or directory

[gguser@Linux03 OGGHOME]$ export ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/db_1/
[gguser@Linux03 OGGHOME]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 12.2.0.1.1 OGGCORE_12.2.0.1.0_PLATFORMS_151211.1401_FBO
Linux, x64, 64bit (optimized), Oracle 12c on Dec 12 2015 02:56:48
Operating system character set identified as UTF-8.

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


GGSCI (Linux03) 1>



Tuesday, April 19, 2016

ggsci: error while loading shared libraries: /u01/app/oracle/ggqp/libclntsh.so.10.1: cannot restore segment prot after reloc: Permission denied

[ggsadmin@qpdb200 ggqp]$ ./ggsci

./ggsci: error while loading shared libraries: /u01/app/oracle/ggqp/libclntsh.so.10.1: cannot restore segment prot after reloc: Permission denied

Solution in my case :
 
set selinux off

Monday, April 18, 2016

Install pre 12c version of Goldengate Software


**************************************************************************************************************
PREVIOUSLY VERSION PRE 11.2 WE HAD TAR FILE WHICH WE HAVE TO UNTAR:
**************************************************************************************************************

$ 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>

Install GoldenGate Software - STEP-3


I Have already downloaded GoldenGate software and copied ot GGHOME Directory

 [gguser@Linux03 GGHOME]$ echo $GGHOME
/u01/app/GGHOME
[gguser@Linux03 GGHOME]$ cd $GGHOME
[gguser@Linux03 GGHOME]$ pwd
/u01/app/GGHOME

UNZIPING OGG SOFTWARE:

[gguser@Linux03 GGHOME]$ ls -al
total 464476
drwxrwxr-x. 2 gguser gguser        4096 Apr 13 14:44 .
drwxrwxr-x. 7 oracle oinstall      4096 Apr 13 14:40 ..
-rw-rw-r--. 1 gguser gguser   475611228 Apr 13 14:44 fbo_ggs_Linux_x64_shiphome.zip
[gguser@Linux03 GGHOME]$ unzip fbo_ggs_Linux_x64_shiphome.zip
Archive:  fbo_ggs_Linux_x64_shiphome.zip
   creating: fbo_ggs_Linux_x64_shiphome/
   creating: fbo_ggs_Linux_x64_shiphome/Disk1/
   .
   .
   .
[gguser@Linux03 GGHOME]$ ls
fbo_ggs_Linux_x64_shiphome  fbo_ggs_Linux_x64_shiphome.zip  OGG-12.2.0.1.1-ReleaseNotes.pdf  OGG-12.2.0.1-README.txt

Previous versions of GG use to be cmd line installation. But now we can use GUI for this. If you want to to do silent Installation follow this link GG-Silent-instalaltion

Once the Software is unzipped you can change directory to runInstaller and invoke installer.

 invoke by calling ./runInstaller

 



Software Location : This will be the location where you want to install oracle Golden Gate Binaries.
Database Location : This will the Oracle Home  directory of Source Database
manager port :7809 by default (you can also select a diff port but I would suggest to leave it as is)




Make sure the locations are correct and click Install.











Once the GG software is installed you will see the GG related files in GG HOME directory.  





Thursday, April 14, 2016

Encrypt password value for GoldenGate using blowfish algorithm

 

Encrypt password value for Golden Gate using Blow fish algorithm


GGSOURCE IS THE PASSWORD FOR USER GGSOURCE (DB USER)

Login as ggsci user:


GGSCI (Linux03 as GGSOURCE@orcl/PDBORCL) 14> ENCRYPT PASSWORD 
GGSOURCE,ENCRYPTKEY DEFAULT

Using Blowfish encryption with DEFAULT key.
Encrypted password:  AACAAAAAAAAAAALAXCJHZHLEZAKGMFABMBWBEJLFHCRHABJGYI  --> This is encrypted value
Algorithm used:  BLOWFISH

[gguser@Linux03 OGGHOME]$ mkdir dirinc
[gguser@Linux03 OGGHOME]$ vi ./dirinc/ggtarget.inc



We can create a  include file to use it for our future references.

GoldenGate Trainer (to All - Entire Audience): vi ./dirinc/ggtarget.inc
USERID ggtarget, PASSWORD AACAAAAAAAAAAALAXCJHZHLEZAKGMFABMBWBEJLFHCRHABJGYI, ENCRYPTKEY DEFAULT

  
we can use new hash value for our ggsci future dblogins  like this

GGSCI (Linux03 as GGSOURCE@orcl/PDBORCL) 15> DBLOGIN USERID GGSOURCE@PDBORCL,PASSWORD AACAAAAAAAAAAALAXCZHLEZAKGMFABMBWBEJLFHCRHABJGYI ,ENCRYPTKEY DEFAULT


While PDBORCL is the DB NAME


Successfully logged into database PDBORCL

GoldenGate Silent Installation


under maintenance ..

Wednesday, April 13, 2016

You do not have sufficient permissions to access the inventory '/u01/app/oraInventory'

[gguser@Linux03 Disk1]$ ./runInstaller

You do not have sufficient permissions to access the inventory '/u01/app/oraInventory'. Installation cannot continue. It is required that the primary group of the install user is same as the inventory owner group. Make sure that the install user is part of the inventory owner group and restart the installer.: Permission denied

[gguser@Linux03 Disk1]$ ls -ll /u01/app/oraInventory
ls: cannot open directory /u01/app/oraInventory: Permission denied

CHECKING THE GROUPS ON oraInventory:


[root@Linux03 Desktop]# ls -all /u01/app/oraInventory
total 28
drwxrwx---. 5 oracle oracle   4096 Feb 29 15:24 .
drwxrwxr-x. 7 oracle oinstall 4096 Apr 13 14:40 ..
drwxrwx---. 2 oracle oracle   4096 Feb 29 15:24 ContentsXML
drwxrwx---. 2 oracle oracle   4096 Feb 29 15:21 logs
-rw-rw----. 1 oracle oracle     54 Feb 29 15:24 oraInst.loc
-rwxrwx---. 1 oracle oracle   1612 Feb 29 15:24 orainstRoot.sh
drwxrwx---. 2 oracle oracle   4096 Feb 29 15:21 oui

Solution :

CHANGED GGUSER primary Group to oracle which is the primary group for oracle user. In my case oraInventory was under oracle group.

DOWNLOAD AND UNZIP GG SOFTWARE - STEP 2


I WILL BE CALLING ORACLE GOLDEN GATE AS OGG THRU THIS TUTORIAL

You can download the oracle GG software from below link :

http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html



You will need an oracle account for this. This is a free account, so if you don't have one you can register for one.


I have downloaded it from above link.In my case I have to download software for Linuxx86-64 as this will be my host OS and oracle 12c is my source DB.

[gguser@Linux03 Desktop]$ cd
[gguser@Linux03 ~]$ pwd
/home/gguser
[gguser@Linux03 app]$  cd /u01/app
[gguser@Linux03 app]$ mkdir GGHOME
[gguser@Linux03 app]$ ls -ll
total 20
drwxrwxr-x.  2 gguser gguser   4096 Apr 13 14:40 GGHOME
drwxrwxr-x.  2 oracle oracle   4096 Apr 13 14:12 OGG_SFTW
drwxrwxr-x. 11 oracle oinstall 4096 Mar 11 14:45 oracle
drwxrwx---.  5 oracle oracle   4096 Feb 29 15:24 oraInventory
drwxrwxr-x.  3 oracle oinstall 4096 Feb 29 14:57 sftw_12c
[gguser@Linux03 app]$

I AM COPYING MY GG SOFTWARE to GGHOME:
[gguser@Linux03 app]$ cd OGG_SFTW
[gguser@Linux03 OGG_SFTW]$ ls
fbo_ggs_Linux_x64_shiphome.zip
[gguser@Linux03 OGG_SFTW]$ cp fbo_ggs_Linux_x64_shiphome.zip /u01/app/GGHOME

JUST TO MAKE LIFE SIMPLE export GGHOME PATH SO WE CAN USE IT IN FUTURE:
[gguser@Linux03 GGHOME]$ export GGHOME=/u01/app/GGHOME
[gguser@Linux03 GGHOME]$ echo $GGHOME
/u01/app/GGHOME
[gguser@Linux03 GGHOME]$ cd $GGHOME
[gguser@Linux03 GGHOME]$ pwd
/u01/app/GGHOME

UNZIPING OGG SOFTWARE:

[gguser@Linux03 GGHOME]$ ls -al
total 464476
drwxrwxr-x. 2 gguser gguser        4096 Apr 13 14:44 .
drwxrwxr-x. 7 oracle oinstall      4096 Apr 13 14:40 ..
-rw-rw-r--. 1 gguser gguser   475611228 Apr 13 14:44 fbo_ggs_Linux_x64_shiphome.zip
[gguser@Linux03 GGHOME]$ unzip fbo_ggs_Linux_x64_shiphome.zip
Archive:  fbo_ggs_Linux_x64_shiphome.zip
   creating: fbo_ggs_Linux_x64_shiphome/
   creating: fbo_ggs_Linux_x64_shiphome/Disk1/
   .
   .
   .
[gguser@Linux03 GGHOME]$ ls
fbo_ggs_Linux_x64_shiphome  fbo_ggs_Linux_x64_shiphome.zip  OGG-12.2.0.1.1-ReleaseNotes.pdf  OGG-12.2.0.1-README.txt

**************************************************************************************************************
PREVIOUSLY VERSION PRE 11.2 WE HAD TAR FILES, WHICH WILL NEED UNTAR:
**************************************************************************************************************

$ 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

Create the new groups and user for GoldenGate sofwtare. - STEP -1

This is an optional setup. By doing this you can separate the golden gate user access from other users like oracle, RAC user etc. While some prefer to have GG software installed with in oracle user. I like to have it separated.

Create the new groups and user for GoldenGate replication sofwtare.

groupadd ggowner  ## Adding new group ggowner
useradd -g ggowner -G dba,oper gguser ## Adding new user gguser & add to groups default ggowner additional dba,oper,oinstall

WE CAN QUERY THESE NEW USERS IN LINUX:


[root@Linux03 Desktop]# cat /etc/passwd |grep gguser
gguser:x:501:501:golden gate user:/home/gguser:/bin/bash
gguser1:x:502:54331::/home/gguser1:/bin/bash

LOGIN AS NEW USER :

[root@Linux03 Desktop]# su gguser

CHECK THE GROUPS GGUSER IS PART OF :

[gguser@Linux03 Desktop]$ id
uid=501(gguser) gid=501(gguser) groups=501(gguser),54321(oinstall),54322(dba),54330(ggowner) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c102