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:
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.