This posts documents how to install Oracle Client 12.1.0.2 in silent mode on Oracle Linux 7.1. Oracle Client can be installed with Runtime installation type and with Administrator installation type: this posts shows how to do both kind of installations and compare the results.
Oracle doc details installation types with:
Administrator: Enables applications to connect to an Oracle Database instance on the local system or on a remote system. It also provides tools that enable you to administer Oracle Database.
Runtime: Enables applications to connect to an Oracle Database instance on the local system or on a remote system.
Oracle Client on Linux 7 requires many RPM packages: I have installed the preinstallation RPM for this (this RPM is now in the ol7_latest yum repository) with root account:
# yum -y install oracle-rdbms-server-12cR1-preinstall
Note that this package creates also the Linux oracle user account and the dba and oinstall Linux groups.
I have downloaded the Oracle Client installation media and unzipped it with oracle account:
$ unzip linuxamd64_12c_client.zip
I have created some target installation directories with root account:
# mkdir -p /u01/app/12.1.0.2 # chown oracle:dba /u01/app # chown oracle:dba /u01/app/12.1.0.2 # mkdir /u01/app/base # chown oracle:dba /u01/app/base
I have created the target installation directories for Oracle Client Runtime installation with oracle account:
mkdir /u01/app/12.1.0.2/rtclient64
To install in silent mode I have run following script without modifying the default response file:
set -x cd client DISTRIB=`pwd` ./runInstaller -silent \ -responseFile $DISTRIB//response/client_install.rsp \ oracle.install.client.installType=Runtime \ UNIX_GROUP_NAME=dba \ INVENTORY_LOCATION=/u01/app/oraInventory \ SELECTED_LANGUAGES=en \ ORACLE_HOME=/u01/app/12.1.0.2/rtclient64 \ ORACLE_BASE=/u01/app/base \ waitForCompletion=true
Running this scripts has produced following output (I have ignored all warnings):
+ cd client
+ pwd
+ DISTRIB=/home/oracle/stage/client
+ ./runInstaller -silent -responseFile /home/oracle/stage/client//response/client_install.rsp 'oracle.install.client.installType=Runtime' UNIX_GROUP_NAME=dba INVENTORY_LOCATION=/u01/app/oraInventory SELECTED_LANGUAGES=en ORACLE_HOME=/u01/app/12.1.0.2/rtclient64 ORACLE_BASE=/u01/app/base waitForCompletion=true
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 415 MB. Actual 3948 MB Passed
Checking swap space: must be greater than 150 MB. Actual 819 MB Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-06-29_08-38-09PM. Please wait ...
$ [WARNING] [INS-32018] The selected Oracle home is outside of Oracle base.
ACTION: Oracle recommends installing Oracle software within the Oracle base directory. Adjust the Oracle home or Oracle base accordingly.
[WARNING] [INS-13014] Target environment does not meet some optional requirements.
CAUSE: Some of the optional prerequisites are not met. See logs for details. /tmp/OraInstall2015-06-29_08-38-09PM/installActions2015-06-29_08-38-09PM.log
ACTION: Identify the list of failed prerequisite checks from the log: /tmp/OraInstall2015-06-29_08-38-09PM/installActions2015-06-29_08-38-09PM.log. Then either from the log file or from installation manual find the appropriate configuration to meet the prerequisites and fix it manually.
You can find the log of this install session at:
/u01/app/oraInventory/logs/installActions2015-06-29_08-38-09PM.log
The installation of Oracle Client 12c was successful.
Please check '/u01/app/oraInventory/logs/silentInstall2015-06-29_08-38-09PM.log' for more details.
As a root user, execute the following script(s):
1. /u01/app/oraInventory/orainstRoot.sh
Successfully Setup Software.
I have run with root account:
# /u01/app/oraInventory/orainstRoot.sh Changing permissions of /u01/app/oraInventory. Adding read,write permissions for group. Removing read,write,execute permissions for world. Changing groupname of /u01/app/oraInventory to dba. The execution of the script is complete.
To use this Oracle Client installation I have run:
$ export ORACLE_HOME=/u01/app/12.1.0.2/rtclient64 $ export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH $ PATH=$ORACLE_HOME/bin:$PATH $ which sqlplus /u01/app/12.1.0.2/rtclient64/bin/sqlplus $ sqlplus -v SQL*Plus: Release 12.1.0.2.0 Production
To install Oracle Client with administrator installation type, I have created its target directory with oracle account:
$ mkdir /u01/app/12.1.0.2/admclient64
To install in silent mode I have run following script without modifying the default response file:
set -x cd client DISTRIB=`pwd` ./runInstaller -silent \ -responseFile $DISTRIB//response/client_install.rsp \ oracle.install.client.installType=Administrator \ UNIX_GROUP_NAME=dba \ INVENTORY_LOCATION=/u01/app/oraInventory \ SELECTED_LANGUAGES=en \ ORACLE_HOME=/u01/app/12.1.0.2/admclient64 \ ORACLE_BASE=/u01/app/base \ waitForCompletion=true
Running this scripts has produced following output (I have ignored all warnings):
+ cd client + pwd + DISTRIB=/home/oracle/stage/client + ./runInstaller -silent -responseFile /home/oracle/stage/client//response/client_install.rsp 'oracle.install.client.installType=Administrator' UNIX_GROUP_NAME=dba INVENTORY_LOCATION=/u01/app/oraInventory SELECTED_LANGUAGES=en ORACLE_HOME=/u01/app/12.1.0.2/admclient64 ORACLE_BASE=/u01/app/base waitForCompletion=true Starting Oracle Universal Installer... Checking Temp space: must be greater than 415 MB. Actual 2586 MB Passed Checking swap space: must be greater than 150 MB. Actual 819 MB Passed Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-06-29_08-41-27PM. Please wait ... $ [WARNING] [INS-32018] The selected Oracle home is outside of Oracle base. ACTION: Oracle recommends installing Oracle software within the Oracle base directory. Adjust the Oracle home or Oracle base accordingly. [WARNING] [INS-13014] Target environment does not meet some optional requirements. CAUSE: Some of the optional prerequisites are not met. See logs for details. /u01/app/oraInventory/logs/installActions2015-06-29_08-41-27PM.log ACTION: Identify the list of failed prerequisite checks from the log: /u01/app/oraInventory/logs/installActions2015-06-29_08-41-27PM.log. Then either from the log file or from installation manual find the appropriate configuration to meet the prerequisites and fix it manually. You can find the log of this install session at: /u01/app/oraInventory/logs/installActions2015-06-29_08-41-27PM.log The installation of Oracle Client 12c was successful. Please check '/u01/app/oraInventory/logs/silentInstall2015-06-29_08-41-27PM.log' for more details. Successfully Setup Software.
To use this Oracle Client installation I have run:
$ export ORACLE_HOME=/u01/app/12.1.0.2/admclient64 $ export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH $ PATH=$ORACLE_HOME/bin:$PATH $ which sqlplus /u01/app/12.1.0.2/admclient64/bin/sqlplus $ sqlplus -v SQL*Plus: Release 12.1.0.2.0 Production
Runtime installation type is using 1.4 GB and Administrator installation type is using 1.8 GB:
$ du -sh /u01/app/12.1.0.2/rtclient64 1.4G /u01/app/12.1.0.2/rtclient64 $ du -sh /u01/app/12.1.0.2/admclient64 1.8G /u01/app/12.1.0.2/admclient64 $
Administrator installation type has many executables that Runtime installation type does not have:
$ diff -r /u01/app/12.1.0.2/admclient64/bin /u01/app/12.1.0.2/rtclient64/bin | grep Only Only in /u01/app/12.1.0.2/admclient64/bin: adrciO Only in /u01/app/12.1.0.2/admclient64/bin: aqxmlctl Only in /u01/app/12.1.0.2/admclient64/bin: aqxmlctl.pl Only in /u01/app/12.1.0.2/admclient64/bin: awm Only in /u01/app/12.1.0.2/admclient64/bin: awm.bat Only in /u01/app/12.1.0.2/admclient64/bin: dbfs_client Only in /u01/app/12.1.0.2/admclient64/bin: dbgeu_run_action.pl Only in /u01/app/12.1.0.2/admclient64/bin: dbshut Only in /u01/app/12.1.0.2/admclient64/bin: dbstart Only in /u01/app/12.1.0.2/admclient64/bin: deploync Only in /u01/app/12.1.0.2/admclient64/bin: dg4pwd Only in /u01/app/12.1.0.2/admclient64/bin: dg4pwdO Only in /u01/app/12.1.0.2/admclient64/bin: dgmgrl Only in /u01/app/12.1.0.2/admclient64/bin: diagsetup Only in /u01/app/12.1.0.2/admclient64/bin: dropjava Only in /u01/app/12.1.0.2/admclient64/bin: dsml2ldif Only in /u01/app/12.1.0.2/admclient64/bin: exp Only in /u01/app/12.1.0.2/admclient64/bin: expdp Only in /u01/app/12.1.0.2/admclient64/bin: expdpO Only in /u01/app/12.1.0.2/admclient64/bin: expO Only in /u01/app/12.1.0.2/admclient64/bin: extproc Only in /u01/app/12.1.0.2/admclient64/bin: extprocO Only in /u01/app/12.1.0.2/admclient64/bin: geneziO Only in /u01/app/12.1.0.2/admclient64/bin: imp Only in /u01/app/12.1.0.2/admclient64/bin: impdp Only in /u01/app/12.1.0.2/admclient64/bin: impdpO Only in /u01/app/12.1.0.2/admclient64/bin: impO Only in /u01/app/12.1.0.2/admclient64/bin: jpub Only in /u01/app/12.1.0.2/admclient64/bin: kgmgrO Only in /u01/app/12.1.0.2/admclient64/bin: ldapadd Only in /u01/app/12.1.0.2/admclient64/bin: ldapaddmt Only in /u01/app/12.1.0.2/admclient64/bin: ldapbind Only in /u01/app/12.1.0.2/admclient64/bin: ldapcompare Only in /u01/app/12.1.0.2/admclient64/bin: ldapdelete Only in /u01/app/12.1.0.2/admclient64/bin: ldapmoddn Only in /u01/app/12.1.0.2/admclient64/bin: ldapmodify Only in /u01/app/12.1.0.2/admclient64/bin: ldapmodifymt Only in /u01/app/12.1.0.2/admclient64/bin: ldapsearch Only in /u01/app/12.1.0.2/admclient64/bin: ldifmigrator Only in /u01/app/12.1.0.2/admclient64/bin: loadjava Only in /u01/app/12.1.0.2/admclient64/bin: loadpspO Only in /u01/app/12.1.0.2/admclient64/bin: ncomp Only in /u01/app/12.1.0.2/admclient64/bin: odisrvreg Only in /u01/app/12.1.0.2/admclient64/bin: oidca Only in /u01/app/12.1.0.2/admclient64/bin: oidprovtool Only in /u01/app/12.1.0.2/admclient64/bin: ojvmjava Only in /u01/app/12.1.0.2/admclient64/bin: ojvmtc Only in /u01/app/12.1.0.2/admclient64/bin: okdstry Only in /u01/app/12.1.0.2/admclient64/bin: okdstry0 Only in /u01/app/12.1.0.2/admclient64/bin: okinit Only in /u01/app/12.1.0.2/admclient64/bin: okinit0 Only in /u01/app/12.1.0.2/admclient64/bin: oklist Only in /u01/app/12.1.0.2/admclient64/bin: oklist0 Only in /u01/app/12.1.0.2/admclient64/bin: oracg Only in /u01/app/12.1.0.2/admclient64/bin: orapipe Only in /u01/app/12.1.0.2/admclient64/bin: orionO Only in /u01/app/12.1.0.2/admclient64/bin: osh Only in /u01/app/12.1.0.2/admclient64/bin: plshprof Only in /u01/app/12.1.0.2/admclient64/bin: plshprofO Only in /u01/app/12.1.0.2/admclient64/bin: procob Only in /u01/app/12.1.0.2/admclient64/bin: rman Only in /u01/app/12.1.0.2/admclient64/bin: rmanO Only in /u01/app/12.1.0.2/admclient64/bin: rtsora Only in /u01/app/12.1.0.2/admclient64/bin: schemasync Only in /u01/app/12.1.0.2/admclient64/bin: sqlj Only in /u01/app/12.1.0.2/admclient64/bin: sqlldr Only in /u01/app/12.1.0.2/admclient64/bin: sqlldrO Only in /u01/app/12.1.0.2/admclient64/bin: statusnc Only in /u01/app/12.1.0.2/admclient64/bin: sysresv Only in /u01/app/12.1.0.2/admclient64/bin: tkprof Only in /u01/app/12.1.0.2/admclient64/bin: tkprofO Only in /u01/app/12.1.0.2/admclient64/bin: tnnfg Only in /u01/app/12.1.0.2/admclient64/bin: transx Only in /u01/app/12.1.0.2/admclient64/bin: uidrvciO Only in /u01/app/12.1.0.2/admclient64/bin: wrap Only in /u01/app/12.1.0.2/admclient64/bin: xmlcg Only in /u01/app/12.1.0.2/admclient64/bin: xmldiff Only in /u01/app/12.1.0.2/admclient64/bin: xmlpatch Only in /u01/app/12.1.0.2/admclient64/bin: xsl Only in /u01/app/12.1.0.2/admclient64/bin: xsql Only in /u01/app/12.1.0.2/admclient64/bin: xvm
Administrator installation type has Data Guard, conventional export/import, Data Pump export/import, LDAP, RMAN executables that Runtime installation does not have. Some executables are also not installed in Runtime installation although one would expect to find them: SQL Loader (sqlldr) and SQL trace profile (tkprof).