Install Oracle Grid Infrastructure 12.1.0.1++ on Fedora 17 – 20


In my previous post i’vh described how to set up the Oracle 12c Database Software to get working on Fedora 17 up to 20. Today i’m going to to show how to setup a RAC Cluster (12.1.0.1) on Fedora 17++ (I’vh testet on Fedora 20). My enviroment: 2x VirtualBox, Fedora 20 x86_64, with 4 CPUs, 4092 MB RAM, 50GB local, 10GB shared disks, 2x NIC Paravirtualized

1. Prerequirements

First start follow the Oracle Database 12c Quick Installation Guide to setup the base for the Grid Infrastructure (see here)
During the setup of the inital stuff you should mention something like that:

Loaded plugins: langpacks, refresh-packagekit
No package libcap1 available.
Error: Nothing to do

This problem doesn’t matter, because there is a newer working version:

[root@fed01 ~]# yum list libcap
Loaded plugins: langpacks, refresh-packagekit
Installed Packages
libcap.x86_64                                             2.22-7.fc20                                             @anaconda
Available Packages
libcap.i686                                               2.22-7.fc20                                             fedora

To avoid an exception like this:

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /opt/oracle/12.1.0.1/grid/crs/install/crsconfig_params
/opt/oracle/12.1.0.1/grid/bin/crsctl query crs releaseversion ... failed rc=127 with message:
 /opt/oracle/12.1.0.1/grid/bin/crsctl.bin: error while loading shared libraries: libcap.so.1: cannot open shared object file: No such file or directory 

Failed to create keys in the OLR, rc = 127, Message:
  /opt/oracle/12.1.0.1/grid/bin/clscfg.bin: error while loading shared libraries: libcap.so.1: cannot open shared object file: No such file or directory 

2014/02/28 00:13:19 CLSRSC-188: Failed to create keys in Oracle Local Registry

Died at /opt/oracle/12.1.0.1/grid/crs/install/crsutils.pm line 6479.
The command '/opt/oracle/12.1.0.1/grid/perl/bin/perl -I/opt/oracle/12.1.0.1/grid/perl/lib -I/opt/oracle/12.1.0.1/grid/crs/install /opt/oracle/12.1.0.1/grid/crs/install/rootcrs.pl ' execution failed

… you have to relink the existing library …

[root@fed01 install]# cd /usr/lib64/
[root@fed01 lib64]# ln -s /usr/lib64/libcap.so.2 /usr/lib64/libcap.so.1

Futher i’vh disabled the firewall to avoid network problems during my tests

systemctl disable firewalld.service

2. Unpack and install the software

There will be nothing special. During linking process you will get the following error:

fedora20_12c_rac

To workaround this errors please follow my previous post. (see here)

You should be able to complete the installation up to the root.sh successfully.

3. root.sh

If you are going to execute the root.sh right now, you will get the following problem:

[root@fed01 lib64]# /opt/oracle/12.1.0.1/grid/root.sh 
Performing root user operation for Oracle 12c 

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /opt/oracle/12.1.0.1/grid

Enter the full pathname of the local bin directory: [/usr/local/bin]:  
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /opt/oracle/12.1.0.1/grid/crs/install/crsconfig_params
OLR initialization - successful
  root wallet
  root wallet cert
  root cert export
  peer wallet
  profile reader wallet
  pa wallet
  peer wallet keys
  pa wallet keys
  peer cert request
  pa cert request
  peer cert
  pa cert
  peer root cert TP
  profile reader root cert TP
  pa root cert TP
  peer pa cert TP
  pa peer cert TP
  profile reader pa cert TP
  profile reader peer cert TP
  peer user cert
  pa user cert
2014/02/28 00:16:34 CLSRSC-330: Adding Clusterware entries to file '/etc/inittab'

2014/02/28 00:18:40 CLSRSC-214: Failed to start 'ohasd'

Failed to start the Clusterware. Last 20 lines of the alert log follow: 
2014-02-28 00:13:19.635: 
[client(8796)]CRS-2101:The OLR was formatted using version 4.
2014-02-28 00:15:11.647: 
[client(9189)]CRS-2101:The OLR was formatted using version 4.

CRS-4133: Oracle High Availability Services has been stopped.
2014/02/28 00:31:53 CLSRSC-117: Failed to start Oracle Clusterware stack

Died at /opt/oracle/12.1.0.1/grid/crs/install/crsutils.pm line 8813.
The command '/opt/oracle/12.1.0.1/grid/perl/bin/perl -I/opt/oracle/12.1.0.1/grid/perl/lib -I/opt/oracle/12.1.0.1/grid/crs/install /opt/oracle/12.1.0.1/grid/crs/install/rootcrs.pl ' execution failed

Oracle’s Grid Infrastructure starts with the intitialization script:

[root@fed01 lib64]# cat /etc/inittab
# inittab is no longer used when using systemd.
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# Ctrl-Alt-Delete is handled by /etc/systemd/system/ctrl-alt-del.target
#
# systemd uses 'targets' instead of runlevels. By default, there are two main targets:
#
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5
#
# To set a default target, run:
#
# ln -sf /lib/systemd/system/.target /etc/systemd/system/default.target
#
h1:35:respawn:/etc/init.d/init.ohasd run >/dev/null 2>&1

Fedora doesn’t use the old style and switched to systemd, therefore you have to setup the daemon with the new enviroment. Here my implementation

[root@fed01 lib64]# cat /etc/systemd/system/ohasd.service 
[Unit]
Description=ohasd daemon

[Service]
ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1

Reload the dameon unit to inform systemd about my changes

systemctl daemon-reload

Now enable and start the daemon

systemctl enable ohasd.service
systemctl start ohasd.service

Check how it’s work?

[root@fed01 ~]# ps -ef | grep oha                                                                                                                     
root     13069     1  0 00:56 ?        00:00:00 /bin/sh /etc/init.d/init.ohasd run >/dev/null 2>&1

Now re execute the root.sh script and it should finalize successfully:

...
CRS-6016: Resource auto-start has completed for server fed01
CRS-6024: Completed start of Oracle Cluster Ready Services-managed resources
CRS-4123: Oracle High Availability Services has been started.

Preparing packages...
cvuqdisk-1.0.9-1.x86_64
2014/02/28 01:13:27 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded

Here the cluster (first node) output:

[root@fed01 system]# crsctl stat res -t 
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr
               ONLINE  ONLINE       fed01                    STABLE
ora.DATA.dg
               ONLINE  ONLINE       fed01                    STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       fed01                    STABLE
ora.net1.network
               ONLINE  ONLINE       fed01                    STABLE
ora.ons
               ONLINE  ONLINE       fed01                    STABLE
ora.proxy_advm
               ONLINE  OFFLINE      fed01                    STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       fed01                    STABLE
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       fed01                    STABLE
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       fed01                    STABLE
ora.MGMTLSNR
      1        OFFLINE OFFLINE                               STABLE
ora.asm
      1        ONLINE  ONLINE       fed01                    STABLE
      2        OFFLINE OFFLINE                               STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.cvu
      1        ONLINE  ONLINE       fed01                    STABLE
ora.fed01.vip
      1        ONLINE  ONLINE       fed01                    STABLE
ora.oc4j
      1        ONLINE  ONLINE       fed01                    STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       fed01                    STABLE
ora.scan2.vip
      1        ONLINE  ONLINE       fed01                    STABLE
ora.scan3.vip
      1        ONLINE  ONLINE       fed01                    STABLE
--------------------------------------------------------------------------------

4. Redo on all other nodes and complete setup

To complete your cluster setup redo all step above.

For completion the output from the second node (root.sh):

[root@fed02 lib64]# /opt/oracle/12.1.0.1/grid/root.sh 
Performing root user operation for Oracle 12c 

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /opt/oracle/12.1.0.1/grid

Enter the full pathname of the local bin directory: [/usr/local/bin]: 
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /opt/oracle/12.1.0.1/grid/crs/install/crsconfig_params

CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'fed02'                                                                                                                                                                                                                                
CRS-2673: Attempting to stop 'ora.crsd' on 'fed02'                                                                                                                                                                                                                                                                           
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'fed02'                                                                                                                                                                                                                                           
CRS-2673: Attempting to stop 'ora.DATA.dg' on 'fed02'                                                                                                                                                                                                                                                                        
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'fed02'                                                                                                                                                                                                                                                            
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN3.lsnr' on 'fed02'                                                                                                                                                                                                                                                            
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN2.lsnr' on 'fed02'                                                                                                                                                                                                                                                            
CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'fed02' succeeded                                                                                                                                                                                                                                                             
CRS-2673: Attempting to stop 'ora.scan1.vip' on 'fed02'                                                                                                                                                                                                                                                                      
CRS-2677: Stop of 'ora.LISTENER_SCAN3.lsnr' on 'fed02' succeeded                                                                                                                                                                                                                                                             
CRS-2673: Attempting to stop 'ora.scan3.vip' on 'fed02'                                                                                                                                                                                                                                                                      
CRS-2677: Stop of 'ora.LISTENER_SCAN2.lsnr' on 'fed02' succeeded                                                                                                                                                                                                                                                             
CRS-2673: Attempting to stop 'ora.scan2.vip' on 'fed02'                                                                                                                                                                                                                                                                      
CRS-2677: Stop of 'ora.scan1.vip' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.scan1.vip' on 'fed01'
CRS-2677: Stop of 'ora.scan3.vip' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.scan3.vip' on 'fed01'
CRS-2677: Stop of 'ora.scan2.vip' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.scan2.vip' on 'fed01'
CRS-2676: Start of 'ora.scan1.vip' on 'fed01' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN1.lsnr' on 'fed01'
CRS-2676: Start of 'ora.scan3.vip' on 'fed01' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN3.lsnr' on 'fed01'
CRS-2676: Start of 'ora.scan2.vip' on 'fed01' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN2.lsnr' on 'fed01'
CRS-2676: Start of 'ora.LISTENER_SCAN1.lsnr' on 'fed01' succeeded
CRS-2676: Start of 'ora.LISTENER_SCAN3.lsnr' on 'fed01' succeeded
CRS-2676: Start of 'ora.LISTENER_SCAN2.lsnr' on 'fed01' succeeded
CRS-2677: Stop of 'ora.DATA.dg' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.asm' on 'fed02'
CRS-2677: Stop of 'ora.asm' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.ASMNET1LSNR_ASM.lsnr' on 'fed02'
CRS-2677: Stop of 'ora.ASMNET1LSNR_ASM.lsnr' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.ons' on 'fed02'
CRS-2677: Stop of 'ora.ons' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.net1.network' on 'fed02'
CRS-2677: Stop of 'ora.net1.network' on 'fed02' succeeded
CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'fed02' has completed
CRS-2677: Stop of 'ora.crsd' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.evmd' on 'fed02'
CRS-2673: Attempting to stop 'ora.storage' on 'fed02'
CRS-2673: Attempting to stop 'ora.crf' on 'fed02'
CRS-2673: Attempting to stop 'ora.mdnsd' on 'fed02'
CRS-2673: Attempting to stop 'ora.gpnpd' on 'fed02'
CRS-2677: Stop of 'ora.storage' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.asm' on 'fed02'
CRS-2677: Stop of 'ora.crf' on 'fed02' succeeded
CRS-2677: Stop of 'ora.mdnsd' on 'fed02' succeeded
CRS-2677: Stop of 'ora.gpnpd' on 'fed02' succeeded
CRS-2677: Stop of 'ora.evmd' on 'fed02' succeeded
CRS-2677: Stop of 'ora.asm' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.ctssd' on 'fed02'
CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'fed02'
CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'fed02' succeeded
CRS-2677: Stop of 'ora.ctssd' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'fed02'
CRS-2677: Stop of 'ora.cssd' on 'fed02' succeeded
CRS-2673: Attempting to stop 'ora.gipcd' on 'fed02'
CRS-2677: Stop of 'ora.gipcd' on 'fed02' succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'fed02' has completed
CRS-4133: Oracle High Availability Services has been stopped.
CRS-4123: Starting Oracle High Availability Services-managed resources
CRS-2672: Attempting to start 'ora.mdnsd' on 'fed02'
CRS-2672: Attempting to start 'ora.evmd' on 'fed02'
CRS-2676: Start of 'ora.evmd' on 'fed02' succeeded
CRS-2676: Start of 'ora.mdnsd' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.gpnpd' on 'fed02'
CRS-2676: Start of 'ora.gpnpd' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.gipcd' on 'fed02'
CRS-2676: Start of 'ora.gipcd' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.cssdmonitor' on 'fed02'
CRS-2676: Start of 'ora.cssdmonitor' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.cssd' on 'fed02'
CRS-2672: Attempting to start 'ora.diskmon' on 'fed02'
CRS-2676: Start of 'ora.diskmon' on 'fed02' succeeded
CRS-2789: Cannot stop resource 'ora.diskmon' as it is not running on server 'fed02'
CRS-2676: Start of 'ora.cssd' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'fed02'
CRS-2672: Attempting to start 'ora.ctssd' on 'fed02'
CRS-2676: Start of 'ora.ctssd' on 'fed02' succeeded
CRS-2676: Start of 'ora.cluster_interconnect.haip' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.asm' on 'fed02'
CRS-2676: Start of 'ora.asm' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.storage' on 'fed02'
CRS-2676: Start of 'ora.storage' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.crf' on 'fed02'
CRS-2676: Start of 'ora.crf' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.crsd' on 'fed02'
CRS-2676: Start of 'ora.crsd' on 'fed02' succeeded
CRS-6017: Processing resource auto-start for servers: fed02
CRS-2672: Attempting to start 'ora.ASMNET1LSNR_ASM.lsnr' on 'fed02'
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'fed01'
CRS-2672: Attempting to start 'ora.ons' on 'fed02'
CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'fed01' succeeded
CRS-2673: Attempting to stop 'ora.scan1.vip' on 'fed01'
CRS-2677: Stop of 'ora.scan1.vip' on 'fed01' succeeded
CRS-2672: Attempting to start 'ora.scan1.vip' on 'fed02'
CRS-2676: Start of 'ora.scan1.vip' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN1.lsnr' on 'fed02'
CRS-2676: Start of 'ora.ASMNET1LSNR_ASM.lsnr' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.asm' on 'fed02'
CRS-2676: Start of 'ora.ons' on 'fed02' succeeded
CRS-2676: Start of 'ora.LISTENER_SCAN1.lsnr' on 'fed02' succeeded
CRS-2676: Start of 'ora.asm' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.proxy_advm' on 'fed01'
CRS-2679: Attempting to clean 'ora.proxy_advm' on 'fed02'
CRS-5017: The resource action "ora.proxy_advm start" encountered the following error: 
ORA-03113: end-of-file on communication channel
Process ID: 0
Session ID: 0 Serial number: 0
. For details refer to "(:CLSN00107:)" in "/opt/oracle/12.1.0.1/grid/log/fed01/agent/crsd/oraagent_oracle/oraagent_oracle.log".
CRS-2681: Clean of 'ora.proxy_advm' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.proxy_advm' on 'fed02'
CRS-2674: Start of 'ora.proxy_advm' on 'fed01' failed
CRS-2679: Attempting to clean 'ora.proxy_advm' on 'fed01'
CRS-5017: The resource action "ora.proxy_advm start" encountered the following error: 
ORA-03113: end-of-file on communication channel
Process ID: 0
Session ID: 0 Serial number: 0
. For details refer to "(:CLSN00107:)" in "/opt/oracle/12.1.0.1/grid/log/fed02/agent/crsd/oraagent_oracle/oraagent_oracle.log".
CRS-2674: Start of 'ora.proxy_advm' on 'fed02' failed
CRS-2679: Attempting to clean 'ora.proxy_advm' on 'fed02'
CRS-2681: Clean of 'ora.proxy_advm' on 'fed01' succeeded
CRS-2681: Clean of 'ora.proxy_advm' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.proxy_advm' on 'fed02'
CRS-2672: Attempting to start 'ora.DATA.dg' on 'fed02'
CRS-2672: Attempting to start 'ora.proxy_advm' on 'fed01'
CRS-2676: Start of 'ora.DATA.dg' on 'fed02' succeeded
CRS-5017: The resource action "ora.proxy_advm start" encountered the following error: 
ORA-03113: end-of-file on communication channel
Process ID: 0
Session ID: 0 Serial number: 0
. For details refer to "(:CLSN00107:)" in "/opt/oracle/12.1.0.1/grid/log/fed02/agent/crsd/oraagent_oracle/oraagent_oracle.log".
CRS-5017: The resource action "ora.proxy_advm start" encountered the following error: 
ORA-03113: end-of-file on communication channel
Process ID: 0
Session ID: 0 Serial number: 0
. For details refer to "(:CLSN00107:)" in "/opt/oracle/12.1.0.1/grid/log/fed01/agent/crsd/oraagent_oracle/oraagent_oracle.log".
CRS-2674: Start of 'ora.proxy_advm' on 'fed02' failed
CRS-2679: Attempting to clean 'ora.proxy_advm' on 'fed02'
CRS-2674: Start of 'ora.proxy_advm' on 'fed01' failed
CRS-2679: Attempting to clean 'ora.proxy_advm' on 'fed01'
CRS-2681: Clean of 'ora.proxy_advm' on 'fed02' succeeded
CRS-2672: Attempting to start 'ora.proxy_advm' on 'fed02'
===== Summary of resource auto-start failures follows =====
CRS-2807: Resource 'ora.proxy_advm' failed to start automatically.
CRS-6016: Resource auto-start has completed for server fed02
CRS-6024: Completed start of Oracle Cluster Ready Services-managed resources
CRS-4123: Oracle High Availability Services has been started.
2014/02/28 01:53:02 CLSRSC-343: Successfully started Oracle clusterware stack

Preparing packages...
cvuqdisk-1.0.9-1.x86_64
2014/02/28 01:53:18 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded

The final state:

--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr
               ONLINE  ONLINE       fed01                    STABLE
               ONLINE  ONLINE       fed02                    STABLE
ora.DATA.dg
               ONLINE  ONLINE       fed01                    STABLE
               ONLINE  ONLINE       fed02                    STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       fed01                    STABLE
               ONLINE  ONLINE       fed02                    STABLE
ora.net1.network
               ONLINE  ONLINE       fed01                    STABLE
               ONLINE  ONLINE       fed02                    STABLE
ora.ons
               ONLINE  ONLINE       fed01                    STABLE
               ONLINE  ONLINE       fed02                    STABLE
ora.proxy_advm
               ONLINE  OFFLINE      fed01                    STABLE
               ONLINE  OFFLINE      fed02                    STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       fed02                    STABLE
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       fed01                    STABLE
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       fed01                    STABLE
ora.MGMTLSNR
      1        ONLINE  ONLINE                                STABLE
ora.asm
      1        ONLINE  ONLINE       fed01                    STABLE
      2        ONLINE  ONLINE       fed02                    STABLE
ora.cvu
      1        ONLINE  ONLINE       fed01                    STABLE
ora.fed01.vip
      1        ONLINE  ONLINE       fed01                    STABLE
ora.fed02.vip
      1        ONLINE  ONLINE       fed02                    STABLE
ora.oc4j
      1        ONLINE  ONLINE       fed01                    STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       fed02                    STABLE
ora.scan2.vip
      1        ONLINE  ONLINE       fed01                    STABLE
ora.scan3.vip
      1        ONLINE  ONLINE       fed01                    STABLE
--------------------------------------------------------------------------------

In my next post i’m trying to enable asmlib and acfs support. I hope i’ll get it to work.

DONE & Have Fun!

Install Oracle Database 11.2.x on Fedora 17-20


NOTICE: This workaround works for Fedora 20 (beta) too.

During installation of 11.2.x of Oracle Database software you may get an error during LINK part of installation:

Exception String: Error in invoking target 'agent nmhs' of makefile '/opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib/ins_emagent.mk'.

install_11204_problem

In the Installationlog you will see the following errors

INFO: gcc -o /opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib/emdctl -L/opt/oracle/app/product/11.2.0.4/dbhome_1/lib/ -L/opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib/        `cat /opt/oracle/app/product/11.2.0.4/dbhome_1/lib/sysliblist` -Wl,-rpath,/opt/oracle/app/product/11.2.0.4/dbhome_1/lib -lm    `cat /opt/oracle/app/product/11.2.0.4/dbhome_1/lib/sysliblist` -ldl -lm   -L/opt/oracle/app/product/11.2.0.4/dbhome_1/lib /opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib//s0nmectl.o -lnmectl -lclntsh -
INFO: L/opt/oracle/app/product/11.2.0.4/dbhome_1/lib  -L/opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib/ -lnmemso -lcore11 -Wl,-rpath,/opt/oracle/app/product/11.2.0.4/dbhome_1/lib/:/opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib/:/opt/oracle/app/product/11.2.0.4/dbhome_1/jdk/jre/lib/amd64/server:/opt/oracle/app/product/11.2.0.4/dbhome_1/jdk/jre/lib/amd64 -L/opt/oracle/app/product/11.2.0.4/dbhome_1/jdk/jre/lib/amd64/server -L/opt/oracle/app/product/11.2.0.4/dbhome_1/jdk/jre/lib/amd64 -z lazyload -ljava -
INFO: ljvm -lverify -z nolazyload -Wl,-rpath,/opt/oracle/app/product/11.2.0.4/dbhome_1/lib/:/opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib/:/opt/oracle/app/product/11.2.0.4/dbhome_1/jdk/jre/lib/amd64/server:/opt/oracle/app/product/11.2.0.4/dbhome_1/jdk/jre/lib/amd64 -Wl,--allow-shlib-undefined    `cat /opt/oracle/app/product/11.2.0.4/dbhome_1/lib/sysliblist` -ldl -lm

INFO: /usr/bin/ld: warning: -z lazyload ignored.
/usr/bin/ld: warning: -z nolazyload ignored.
/usr/bin/ld: /opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib//libnmectl.a(nmectlt.o): undefined reference to symbol 'B_DestroyKeyObject'
/usr/bin/ld: note: 'B_DestroyKeyObject' is defined in DSO /opt/oracle/app/product/11.2.0.4/dbhome_1/lib/libnnz11.so so try adding it to the linker command line
/opt/oracle/app/product/11.2.0.4/dbhome_1/lib/libnnz11.so: could not read symbols: Invalid operation

INFO: collect2: error: ld returned 1 exit status

INFO: make[1]: *** [/opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib/emdctl] Error 1

INFO: make[1]: Leaving directory `/home/dhafner/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib'

INFO: make: *** [emdctl] Error 2

INFO: End output from spawned process.
INFO: ----------------------------------
INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target 'agent nmhs' of makefile '/opt/oracle/app/product/11.2.0.4/dbhome_1/sysman/lib/ins_emagent.mk'. See '/opt/oracle/oraInventory/logs/installActions2013-08-28_08-44-20PM.log' for details.
Exception Severity: 1

To correct this error edit the file <ORACLE_HOME>/sysman/lib/ins_emagent.mk from

171 #===========================
172 #  emdctl
173 #===========================
174
175 $(SYSMANBIN)emdctl:
176         $(MK_EMAGENT_NMECTL)

to

171 #===========================
172 #  emdctl
173 #===========================
174
175 $(SYSMANBIN)emdctl:
176         $(MK_EMAGENT_NMECTL) -lnnz11

Now save and click “RETRY” in installer prompt. The installation should complete successful now

Install Oracle 12.1.0.1++ on Fedora 17 – 20


I’m using Fedora 19 on my notebook and tried to install oracle 12.1.0.1 for evaluation purposes. As I tried, I’vh got an error during “Link binaries” step. Maybe the following steps are working on other operating systems too. NOTICE: I’vh tested this workaround on Fedora 20 also -> Success.

UPDATE 22.07.2014: Oracle released 12.1.0.2.0 Patchset for 12.1.0.1.0. With this PatchSet the Installation should work without problems. I’vh tested on Fedora 19/20 and RHEL 7 which worked for me without any issue!

Here the error:

  • Error in invoking target ‘links proc gen_pcscfg procob’ of makefile ‘<ORACLE_HOME>/precomp/lib/ins_precomp.mk
  • INFO: /usr/bin/ld: <ORACLE_HOME>/lib//libnls12.a(lxhlang.o): undefined reference to symbol ‘__tls_get_addr@@GLIBC_2.3’ /usr/bin/ld: note: ‘__tls_get_addr@@GLIBC_2.3’ is defined in DSO /lib64/ld-linux-x86-64.so.2 so try adding it to the linker command line /lib64/ld-linux-x86-64.so.2: could not read symbols: Invalid operation

fedora_error The problem are the link dependencies. To solve this issue: 1. Goto <ORACLE_HOME>/lib/stubs/ take a backup and delete this folder. Here an example:

[bash]$ rm -rf /opt/oracle/app/product/12.1.0/dbhome_3/lib/stubs/

2. Backup and then edit <ORACLE_HOME>/rdbms/lib/env_rdbms.mk: 2.1 Search for “LINKTTLIBS” and change the line from

   176 LINKTTLIBS=$(LLIBCLNTSH) $(ORACLETTLIBS) $(LINKLDLIBS)

to

   176 LINKTTLIBS=$(LLIBCLNTSH) $(ORACLETTLIBS) $(LINKLDLIBS) -lons

2.2 Now search for “LINK=” and change the line from

    279 LINK=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS) $(COMPSOBJS)
    280 LINK32=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS32) $(COMPSOBJS)

to

    279 LINK=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS) $(COMPSOBJS) -Wl,--no-as-needed
    280 LINK32=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS32) $(COMPSOBJS) -Wl,--no-as-needed

2.3 Last but not least, search for “TG4PWD_LINKLINE” and change the line from

   3041 TG4PWD_LINKLINE= $(LINK) $(OPT) $(TG4PWDMAI) \
   3042         $(LLIBTHREAD) $(LLIBCLNTSH) $(LINKLDLIBS)

to

   3041 TG4PWD_LINKLINE= $(LINK) $(OPT) $(TG4PWDMAI) \
   3042         $(LLIBTHREAD) $(LLIBCLNTSH) $(LINKLDLIBS) -lnnz12

The line number changes in future releases to

3126 TG4PWD_LINKLINE= $(LINK) $(OPT) $(TG4PWDMAI) \
3127         $(LLIBTHREAD) $(LLIBCLNTSH) $(LINKLDLIBS) -lnnz12

3. Return back to installer an click “retry”. The installation should complete without errors now. 4. After installed successfully you have to start relinking process again, because some executables are missing now. Therefor change current folder to <ORACLE_HOME>\bin:

[bash]$ /opt/oracle/app/product/12.1.0/dbhome_3/bin
[bash]$ ls -l | wc -l
239
[bash]$ ./relink all
writing relink log to: /opt/oracle/app/product/12.1.0/dbhome_3/install/relink.log
[bash]$ grep -i err /opt/oracle/app/product/12.1.0/dbhome_3/install/relink.log
[bash]$ ls -l | wc -l
240

If you want to setup Oracle Grid Infrastructure 12c (see here)

UPDATE 22.04.2014:

In future Patchsets you may get the following error: fedora20_12102 In the logfile you will see the following error

INFO: /opt/oracle/product/12.1.0.2/dbhome_1/bin/orald -o ctxhx -m64 -z noexecstack -Wl,--disable-new-dtags -L/opt/oracle/product/12.1.0.2/dbhome_1/ctx/lib/ -L/opt/oracle/product/12.1.0.2/dbhome_1/lib/ -L/opt/oracle/product/12.1.0.2/dbhome_1/lib/stubs/  /opt/oracle/product/12.1.0.2/dbhome_1/ctx/lib/ctxhx.o -Wl,--unresolved-symbols=ignore-in-shared-libs -L/opt/oracle/product/12.1.0.2/dbhome_1/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut -lsc_ch -lsc_fi -lsc_fmt -lsc_ind -lwv_core -lsc_lo -lsc_fut -lsc_anno 
INFO: -lz -lctxhx -Wl,-L/opt/oracle/product/12.1.0.2/dbhome_1/ctx/lib -lsnls12 -lnls12  -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12  `cat /opt/oracle/product/12.1.0.2/dbhome_1/lib/sysliblist` `cat /opt/oracle/product/12.1.0.2/dbhome_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnro12 `cat /opt/oracle/product/12.1.0.2/dbhome_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnnz12 -lzt12 -lztkg12 -Wl,-rpath,'/opt/oracle/
INFO: product/12.1.0.2/dbhome_1/lib:/opt/oracle/product/12.1.0.2/dbhome_1/ctx/lib'

INFO: /usr/bin/ld: /opt/oracle/product/12.1.0.2/dbhome_1/lib//libcore12.a(sslss.o): undefined reference to symbol '__tls_get_addr@@GLIBC_2.3'
/usr/bin/ld: note: '__tls_get_addr@@GLIBC_2.3' is defined in DSO /lib64/ld-linux-x86-64.so.2 so try adding it to the linker command line
/lib64/ld-linux-x86-64.so.2: could not read symbols: Invalid operation

INFO: collect2: error: ld returned 1 exit status

INFO: make: *** [ctxhx] Error 1

INFO: End output from spawned process.
INFO: ----------------------------------
INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target 'install' of makefile '/opt/oracle/product/12.1.0.2/dbhome_1/ctx/lib/ins_ctx.mk'. See '/opt/oracle/oraInventory/logs/installActions2014-04-22_04-37-48PM.log' for details.
Exception Severity: 1

Therefore you have to change the following: 1. Do step 1 from top of this article and delete the stubs folder 2. Open file $ORACLE_HOME/ctx/lib/env_ctx.mk and change from

 153 PURECMDS=$(PURELINK) $(PURIFY) $(PURECOV) $(QUANTIFY)
 154 LINK=$(LDCCOM)
 155 LINKCC=$(LDCCOMCC)

to

 153 PURECMDS=$(PURELINK) $(PURIFY) $(PURECOV) $(QUANTIFY)
 154 LINK=$(LDCCOM) --Wl,--no-as-needed
 155 LINKCC=$(LDCCOMCC)

3. Retry relink