Table of Contents
To install on CentOS, you have to trick the Oracle installer into thinking it is installing on Redhat.
Edit these files:
/etc/issue and /etc/redhat-release
and replace the CentOS with this line:
Red Hat Enterprise Linux Server release 5 (Tikanga)
From root on the machine:
Make sure the kernel version meets the minimum Oracle requirements
Required kernel version: 2.6.18
uname -rm
Add or modify the following parameters in /etc/sysctl.conf
You could leave this alone and the installer will generate a fixup script which will modify those that need modifying.
- Minimum requirements for Oracle fs.suid_dumpable = 1 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 - semaphores: semmsl, semmns, semopm, semmni kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default=4194304 net.core.rmem_max=4194304 net.core.wmem_default=262144 net.core.wmem_max=1048586
Run
/sbin/sysctl -a | grep <param-name>
to check the current value and
/sbin/sysctp -p
to make the changes take effect.
The following lines have to be added to /etc/security/limits.conf
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 4096 oracle hard nofile 65536 oracle soft stack 10240
Check required packages are installed
This is a list of the packages that must be installed for the Oracle installation to succeed
binutils-2.* compat-libstdc++-33* elfutils-libelf* gcc-4.* gcc-c++-4.* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2.* ksh* libaio-0.* libaio-devel-0.* libgomp-4.* libgcc-4.* libstdc++-4.* libstdc++-devel-4.* make-3.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* numactl-devel-*
At root prompt, type
yum info <package_name>
or
rpm -qa | grep <package_name>
to see whether it is installed, and
yum -y install <package_name>
to install the package.
Create the software owner and groups
groupadd dba groupadd oinstall groupadd oper useradd -m -g dba -G oinstall,oper oracle mkdir -p /u01/app/oracle/product/11.2.0/db_1 chown -R oracle:oinstall /u01 chmod -R 775 /u01 passwd oracle
Ensure SELINUX is disabled in /etc/selinux/config
- This file controls the state of SELinux on the system. - SELINUX= can take one of these three values: - enforcing - SELinux security policy is enforced. - permissive - SELinux prints warnings instead of enforcing. - disabled - No SELinux policy is loaded. SELINUX=disabled -
Log in as oracle
Add the following to the .bash_profile
Although only the ORACLE_BASE (and temp dirs) is recommended, you can set the other variables if you know them and want them in the profile.
They will be set automatically when oraenv is called so after installation, you could just set the SID and call oraenv.
- Oracle Settings TMP=/tmp; export TMP TMPDIR=$TMP; export TMPDIR export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 export ORACLE_SID=RTPRD export PATH=$ORACLE_HOME/bin:/usr/sbin:$PAT
Then log out and in again for the changes to take effect
Set the DISPLAY variable to allow the installer to display on your computer
Now this part can either work first time or can be tricky! See “Fixing X11 display issues” further down more more info.
export DISPLAY=<your IP address>>0.0
getting xclock to work
if this doesn't work, forget trying to run the Oracle installer
xclock
Make sure that X11 forwarding is enabled in PuTTY (or whatever you use)
In PuTTY, this setting is found in
Connections:SSH:X11
startx
If this doesn't work, is X installed? yum search xorg-x11
yum info xorg-x11
yum groupinstall "X Window System"
or
yum whatprovides "xclock"
vi /etc/ssh/sshd_config Make sure these settings are uncommented and set
X11Forwarding yes X11DisplayOffset 10
[[oracle@459287-tbscgebl database]]$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 1423 MB Passed
Checking swap space: must be greater than 150 MB. Actual 2047 MB Passed
Checking monitor: must be configured to display at least 256 colors
>>> Could not execute auto check for display colors using command /usr/bin/xdpyinfo. Check if the DISPLAY variable is set. Failed <<<<
Some requirement checks failed. You must fulfill these requirements before
continuing with the installation,
Continue? (y/n) [[n]]
[[oracle@459285-tbscgebl database]]$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 1814 MB Passed
Checking swap space: must be greater than 150 MB. Actual 2047 MB Passed
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2012-11-30_04-10-30PM. Please wait ...Error in CreateOUIProcess(): 13
> Permission denied
means TMP is set to a directory with bad permissions, create a tmp subdirectory under oracle's own account and use that
cd mkdir tmp export TMP=$HOME/tmp
Copy/download the Oracle software to the server
mkdir downloads cd downloads unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip
Now we should have a single directory called 'database' owned by oracle
[[oracle@esra database]]$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 34549 MB Passed
Checking swap space: must be greater than 150 MB. Actual 1972 MB Passed
Checking monitor: must be configured to display at least 256 colors
>>> Could not execute auto check for display colors using command /usr/bin/xdpyinfo. Check if the DISPLAY variable is set. Failed <<<<
Some requirement checks failed. You must fulfill these requirements before
continuing with the installation,
Continue? (y/n) [[n]]
User Selected: No
Exiting Oracle Universal Installer, log for this session can be found at /tmp/OraInstall2013-09-29_08-21-39PM/installActions2013-09-29_08-21-39PM.log
If you see this, you are probably running the installer from an account that does not have the authority to start an X session.
Did you “su - oracle” from a root session?
exit your oracle session going back to root, type:
xhost +
then “su - oracle” again. Works wonders.
