During Linux installation
=========================================================
Base System > Base
Base System > Client management tools
Base System > Compatibility libraries
Base System > Hardware monitoring utilities
Base System > Large Systems Performance
Base System > Network file system client
Base System > Performance Tools
Base System > Perl Support
Servers > Server Platform
Servers > System administration tools
Desktops > Desktop
Desktops > Desktop Platform
Desktops > Fonts
Desktops > General Purpose Desktop
Desktops > Graphical Administration Tools
Desktops > Input Methods
Desktops > X Window System
Applications > Internet Browser
Development > Additional Development
Development > Development Tools
=====================Check RAM =======================
[root@test ~]# grep MemTotal /proc/meminfo
MemTotal: 4048820 kB
[root@test ~]#
/*
We need at least 1GB of physical RAM.
In my case I have more than 1GB.
*/
=============Check SWAP space===============================
[root@test ~]#
[root@test ~]# grep SwapTotal /proc/meminfo
SwapTotal: 3071996 kB
[root@test ~]#
/*
RAM between 1GB and 2GB then Swap = 1.5 times the size of RAM
RAM between 2GB and 16GB then Swap = equal to the size of RAM
RAM more than 16GB then Swap Size = 16GB
Since my RAM is near by 3GB, so I have 3GB of Swap Size.
*/
===================================Check resolution ======================
/*
To install Oracle 11g Release 2 your system should be running
on at least 1024x768 screen resolution.
*/
# xdpyinfo | grep 'dimensions:'
dimensions: 1024x760 pixels (271x203 millimeters)
====================Cehck TMP space=================================
[root@test ~]#
[root@test ~]# df -h /dev/shm/
Filesystem Size Used Avail Use% Mounted on
tmpfs 2.0G 76K 2.0G 1% /dev/shm
[root@test ~]#
Resize tmp
#mount -t tmpfs tmpfs -o size=1500m /dev/shm
exp
[root@test ~]# df -h /dev/shm/
Filesystem Size Used Avail Use% Mounted on
tmpfs 2.0G 76K 2.0G 1% /dev/shm
[root@test ~]# mount -t tmpfs tmpfs -o size=2100m /dev/shm
[root@test ~]#
[root@test ~]# df -h /dev/shm/
Filesystem Size Used Avail Use% Mounted on
tmpfs 2.1G 0 2.1G 0% /dev/shm
[root@test ~]#
[root@test ~]#
/*
You need to have at least 1GB of space in the /tmp directory.
Make sure you have 1GB in the column "Avail" in the above output.
In my case I have 2.1G space available in /tmp.
*/
=================================Check package ==================================
cd /media/OL6.5 x86_64 Disc 1 20131125/Packages
rpm -Uvh binutils-2*x86_64*
rpm -Uvh compat-libcap1*x86_64*
rpm -Uvh compat-libcap1*i686*
rpm -Uvh compat-libstdc++-33*x86_64*
rpm -Uvh compat-libstdc++-33*i686*
rpm -Uvh elfutils-libelf-0*x86_64*
rpm -Uvh elfutils-libelf-devel-0*x86_64*
rpm -Uvh gcc-4*x86_64*
rpm -Uvh gcc-c++-4*x86_64*
rpm -Uvh glibc-2*x86_64* nss-softokn-freebl-3*x86_64*
rpm -Uvh glibc-2*i686* nss-softokn-freebl-3*i686*
rpm -Uvh glibc-common-2*x86_64*
rpm -Uvh glibc-devel-2*x86_64*
rpm -Uvh glibc-devel-2*i686*
rpm -Uvh glibc-headers-2*x86_64*
rpm -Uvh ksh-*x86_64*
rpm -Uvh libaio-0*x86_64*
rpm -Uvh libaio-0*i686*
rpm -Uvh libaio-devel-0*x86_64*
rpm -Uvh libaio-devel-0*i686*
rpm -Uvh libgcc-4*x86_64*
rpm -Uvh libgcc-4*i686*
rpm -Uvh libstdc++-4*x86_64*
rpm -Uvh libstdc++-4*i686*
rpm -Uvh libstdc++-devel-4*x86_64*
rpm -Uvh libstdc++-devel-4*i686*
rpm -Uvh make-3*x86_64*
rpm -Uvh numactl-devel-2*x86_64*
rpm -Uvh sysstat-9*x86_64*
rpm -Uvh unixODBC-2*x86_64*
rpm -Uvh unixODBC-2*i686*
rpm -Uvh unixODBC-devel-2*x86_64*
rpm -Uvh elfutils-libelf-0*i686* elfutils-libelf-devel-0*i686*
rpm -Uvh libtool-ltdl*i686*
rpm -Uvh ncurses*i686*
rpm -Uvh readline*i686*
/* check all the rpm from os disk*/
=======================Make entry Kernal parameter to Support Oracle======================
Open /etc/sysctl.conf and add the following lines:
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 2147483648
kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
Note:
You may find the parameters mentioned above already present in the /etc/sysctl.conf file.
If they have a value lower then mentioned above then make sure you change it,
but if they have a larger value then perhaps its safe to leave it as is.
============================To make effect kernal parameters======================
-- Make the kernel parameters changes effective immediately:
[root@test ~]# /sbin/sysctl -p
========================= Set the shell limits for the user Oracle=========================
Open /etc/security/limits.conf and add these lines.
vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 4096
oracle hard nofile 65536
oracle soft stack 10240
save with
:wq!
Where "nproc" is the maximum number of processes available to the user and "nofiles" is the number of open file descriptors.
=======================Setup User and groups that we will use as Oracle owner and the groups that it will need for installing and managing Oracle=======================
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/groupadd oper
/usr/sbin/useradd -g oinstall -G dba,oper oracle
/usr/bin/passwd oracle
====================Create directories where the Oracle Software and database will be installed.========================
[root@test mail]# mkdir -p /u01/app/oracle/product/11.2.0/db_1
[root@test mail]# chown -R oracle:oinstall /u01
[root@test mail]# chmod -R 0775 /u01
[root@test mail]#
/*
The above directory structure is designed to comply with OFA
(Oracle Flexible Architecture) i.e. a directory structure to
support multiple oracle software installations.
ORACLE_BASE=/u01/app/oracle
-- Base directory for all oracle installations.
*/
===================================
Disable secure linux by editing the /etc/selinux/config file, making sure the SELINUX flag is set as follows:
SELINUX=disabled
/*
If you leave SELINUX=enforcing then you may get an error later while starting sqlplus:
sqlplus: error while loading shared libraries:
/usr/lib/oracle/default/client64/lib/libclntsh.so.11.1: cannot restore segment
prot after reloc: Permission denied
*/
============================================================
Open /etc/pam.d/login and add the following line if it is already not there.
session required pam_limits.so
/*
How does ulimit work?
When you login to the Linux machine, the "login" program reads the file /etc/pam.d/login. The following line has been included in this file:
session required pam_limits.so
This line tells the "login" program to load the pam_limits.so module during login. In turn, the pam_limits.so module is configured to read the file /etc/security/limits.conf. Only the root user can edit this file. This file lists those users who can set the ulimit values.
For example, the following lines in /etc/security/limits.conf file
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
*/
=================================================================
======================Set ENV=================
Now Login with oracle user (switch user)
ls -la
[oracle@test ~]$ ls -la
total 32
drwx------. 4 oracle oinstall 4096 Feb 22 02:06 .
drwxr-xr-x. 3 root root 4096 Feb 22 02:06 ..
-rw-r--r--. 1 oracle oinstall 18 Jul 18 2013 .bash_logout
-rw-r--r--. 1 oracle oinstall 176 Jul 18 2013 .bash_profile
-rw-r--r--. 1 oracle oinstall 124 Jul 18 2013 .bashrc
drwxr-xr-x. 2 oracle oinstall 4096 Nov 20 2010 .gnome2
-rw-r--r--. 1 oracle oinstall 171 Nov 22 2013 .kshrc
drwxr-xr-x. 4 oracle oinstall 4096 Feb 21 22:09 .mozilla
[oracle@test ~]$
[oracle@test ~]$ vi .bash_profile
[oracle@test ~]$
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME
ORACLE_SID=TEST; export ORACLE_SID
PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
export CLASSPATH
================================================================================================================
The environment is ready for oracle installation. Its time to prepare the oracle installation media now.
Download or Copy the oracle media to the oracle user home directory i.e. /home/oracle.
Once Download/Copy is done unzip the media as follows:
[oracle@test software]$ pwd
/u01/software
[oracle@test database]$
[oracle@test database]$ ls -lrt
-rw-r--r--. 1 oracle oinstall 1111416131 Oct 1 2014 linux.x64_11gR2_database_2of2.zip
-rw-r--r--. 1 oracle oinstall 1239269270 Oct 1 2014 linux.x64_11gR2_database_1of2.zip
[oracle@test software]$
[oracle@test software]$ unzip linux.x64_11gR2_database_1of2.zip
[oracle@test software]$ unzip linux.x64_11gR2_database_2of2.zip
[oracle@test database]$
[oracle@test database]$ pwd
/u01/software/database
[oracle@test database]$
[oracle@test database]$ ls -lrt
total 36
-rwxr-xr-x. 1 oracle oinstall 3226 Aug 15 2009 runInstaller
drwxr-xr-x. 2 oracle oinstall 4096 Aug 15 2009 rpm
drwxr-xr-x. 4 oracle oinstall 4096 Aug 15 2009 install
drwxr-xr-x. 14 oracle oinstall 4096 Aug 15 2009 stage
drwxrwxr-x. 2 oracle oinstall 4096 Aug 15 2009 sshsetup
drwxrwxr-x. 2 oracle oinstall 4096 Aug 15 2009 response
drwxr-xr-x. 12 oracle oinstall 4096 Aug 17 2009 doc
-rw-r--r--. 1 oracle oinstall 5402 Aug 18 2009 welcome.html
[oracle@test database]$
[oracle@test database]$./runInstaller
[oracle@test admin]$
[oracle@test admin]$ pwd
/u01/software/database/stage/cvu/cv/admin
[oracle@test admin]$
CV_ASSUME_DISTID=OEL4
to
CV_ASSUME_DISTID=OEL6
======================================================
#if enabled, cvuqdisk rpm is required on all nodes
CV_RAW_CHECK_ENABLED=TRUE
# Fallback to this distribution id
CV_ASSUME_DISTID=OEL6
========================================Missing pdksh-5.2.14===============================
Missing pdksh-5.2.14 package during Oracle database 11.2.0.4 install on Oracle Linux 6 (Doc ID 1962046.1)
its Bug 19947777
Install ksh package then ignore the warring and proceed with installation
[root@test ~]# yum install ksh
===========================================Run from root user=============================================
[root@test ~]#
[root@test ~]# cd /u01/app/oraInventory/
[root@test oraInventory]# ls
ContentsXML install.platform logs oraInstaller.properties oraInst.loc orainstRoot.sh oui
[root@test oraInventory]#
[root@test oraInventory]#
[root@test 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 oinstall.
The execution of the script is complete.
[root@test oraInventory]#
[root@test oraInventory]#
[root@test oraInventory]#
[root@test oraInventory]#
[root@test oraInventory]# cd /u01/app/oracle/product/11.2.0/db_1/
[root@test db_1]#
[root@test db_1]# pwd
/u01/app/oracle/product/11.2.0/db_1
[root@test db_1]#
[root@test db_1]# ls
apex clone cv dv install jdbc log oc4j oracore perl root.sh srvm utl
assistants config dbs emcli install.platform jdev md odbc oraInst.loc plsql scheduler sysman wwg
bin crs dc_ocm EMStagePatches_TEST instantclient jdk mesg olap ord precomp slax test_TEST xdk
ccr csmig deinstall has inventory jlib mgw ons oui racg sqldeveloper timingframework
cdata css demo hs j2ee ldap network OPatch owb rdbms sqlj ucp
cfgtoollogs ctx diagnostics ide javavm lib nls opmn owm relnotes sqlplus uix
[root@test db_1]#
[root@test db_1]# ./root.sh
Running Oracle 11g root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
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.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
[root@test db_1]#
[root@test db_1]#
=============================================================
When configuration scripts are executed successfully by root press OK in the installer and you will see this "Finish" page.
Note down the management URL and press "Close".