[System|Toolbox] Tools
for the Art
of System
Administration
HOME STAFF FAQ ADVERTISE LEGAL
Installing Oracle on RedHat 7.0 and Up
Elmo Recio
Wednesday November 14, 2001 07:00 PM
Many Linux Administrators have had issues installing Oracle on new Red Hat versions, so Elmo has broken down what it takes for us. - Read on!

Installing Oracle 8i (8.1.7.0.1) on RedHat Linux 7.0, 7.1, 7.2 and up.

It's really easy to install if you know what you are doing. I am not going to get into the whole configuration of Oracle and the Kernel as that's well documented in the Oracle PDF's and HTML pages located on their Tech-Net. Honestly, I've never tinkered with any of the kernel modifications myself and Oracle works fine for me. However, for production high priority systems, you might want to configure the kernel... but then again, you'd be using RedHat 6.2SBE and wouldn't be needing this documentation at all if you wanted full support from RedHat and the hardware vendor for the high-availability production system configuration.

First thing you need to do is download or install from your RedHat CD's the RedHat 6.2 compatibility packages:

compat-egcs-6.2-1.1.2.14
compat-libstdc++-6.2-2.9.0.14
compat-glibc-6.2-2.1.3.2
compat-egcs-c++-6.2-1.1.2.14
compat-libs-6.2-3

The above release numbers are the ones I am using on my system (RedHat 7.1) so you may have a newer release already installed or on your CD's. To check to see if it's already installed run:

rpm -qa | grep compat

Second, you have to create the oracle user that will be installing the software. I usually just call this user oracle and give it the primary group of dba (if you have already created that group, otherwise create it.) The oracle documentation says oinstall as a group name should be the installer's primary group, that'll work too.

# groupadd dba
# useradd -g dba -d /home/oracle -s /bin/bash -c "Oracle DBA" oracle
# passwd oracle
Changing password for user oracle
New UNIX password:
Retype new UNIX password:

The next thing you will need is to install a particular set of environment variables in /etc/profile.d/oracle.sh, or in the Oracle user's home directory's profile: ~oracle/.bash_profile.

LD_ASSUME_KERNEL=2.2.5; export LD_ASSUME_KERNEL
. /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh

export ORACLE_BASE=/home/oracle
export ORACLE_HOME=/home/oracle/product/8.1.7.0.1
export ORACLE_SID=MYINST1
export PATH=${PATH}:${ORACLE_HOME}/bin
export CLASSPATH=.:${ORACLE_HOME}/jdbc/lib/classes111.zip
export LD_LIBRARY_PATH=${ORACLE_HOME}/lib:${LD_LIBRARY_PATH}
umask 022

PATH=${ORACLE_HOME}/bin:$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc

export BASH_ENV PATH
unset USERNAME

The interesting part of this login script is second line:

. /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh

This line tells the shell that you want to invoke the "special" version of the gcc tools for linking and compiling.

Setting your classpath to the above value is useful if, in case, you are using any java programs that take advantage of the Oracle java OCI calls (via JDBC). An example of such a program I have used is Metamerge (a program very similar to Data Junction).

Lastly, change your ORACLE_SID to reflect whatever database instance you want to install as the default instance. Users on your system can change this by running the oraenv script.

Sections
   Comments
   History

Toolboxes
Windows
Unix
Novell
Linux
OSX
Networking
General
Virtualization

Submit
   Comment
   Article
   Tool
   Link

Comment? - Or do you think this article blows chunks and you could write a better one in your sleep? Then do it!
View Comment Page

Copyright © 2004, The Binary Freedom Project, LLC.