Installing Oracle 9iR2 on Red Hat 9

There are an ever-growing number of reasons to run the Oracle database server on
a Linux-based OS. The price factor is obvious, as OS licenses can really boost
the total price of your multiple workstation or clustered (RAC) server
installation. Then there's the stability factor, the possibility of total
remote administration, the availability of platform source code, speed,
flexible filesystem, the strong Unix legacy .... Heck, even Oracle itself runs
its business on what they like to call Unbreakable Linux.

Red Hat's latest and greatest Linux
distribution release comes with quite a few improvements, many of which are
targeted at the needs of the workstation user. As new hardware owners become
early adopters, this OS will surely dominate Linux developers' workstations in
the months to come. Support for cutting-edge hardware and software
technologies, easier maintenance via graphical configuration tools, polished
office and productivity applications, a unified interface, development tools,
and, of course, Red Hat's reputation will also make it the OS of choice for many
Oracle developers. Unfortunately, unless the current version was certified,
Oracle installation hardly ever ran smoothly on Red Hat Linux. Still, where
there's a will, there's always a way. With a little help from this article, you
will have your Oracle 9iR2 server running in no time on your new Red Hat 9 box.
Let us begin.

Adding Users and Groups

First, you will need to create the Oracle installation and users and groups.
Oracle installation needs two Unix user groups and one runtime Oracle user.

The last command will prompt you to enter the password for your
oracle user. Make sure you remember it, because you will probably
need it as we go along.

Creating Directories

Oracle recommends OFA, the Optimal Flexible Architecture directory
structure for a deployment server, but on a development machine and for the
sake of simplicity, we will install everything under /opt/ora9.

Just make sure you have at least 3.5GB available for a full installation
including one database, and issue the following commands as root:

You have now created Oracle runtime directories and granted write
privileges to user oracle and execute privileges to group
dba.

Installing Required Tools and Libraries

You will need to install the following Red Hat backward-compatibility and software-development packages before we get
further underway. All of these packages can be found on Red Hat
installation CDs 1-3.

You can install these packages using Redhat's graphical package manager
available in Start menu->System Settings->Add/Remove Applications, or from
the command line, using:

rpm -Uvh <package_name>

Replace package_name with each RPM listed above.

Important notice: A shrink-wrapped Red Hat 9 and the freely downloadable version do not contain the same glibc package. The
purchased version contains some patches needed for Oracle Intelligent Agent to
run correctly, while the downloaded version does not contain these patches. If
you are unsure which version of Red Hat you have installed, you will be on the
safe side if you replace your glibc packages with prepatched glibc packages prepared by Jason McIntosh. His RPMs were built from the same source (*.rpms) files as the original ones, but with the required patches applied.

If your system contains a non-empty /lib/i686 directory, fetch
the i686 packages. Otherwise, you may run into trouble with misplaced
libraries. Where an i686 version of the package is not available, just use
whatever is.

Once you have downloaded all of the packages, use the command line
rpm tool to upgrade:

% rpm -UVh package_name

Setting Kernel Parameters

Red Hat religiously sets some kernel parameters too conservatively.
Check your hardware configuration and assign enough shared memory, open files,
and ports, or you may run into trouble installing and running Oracle. Append
these lines to /etc/sysctl.conf to set kernel parameters:

Setting up the oracle User Environment

Log in as the oracle user:

% su - oracle

I will assume that you are using the default bash shell for this user.
Setting environment variables in other shells may differ from this example, so
check your shell's manual page or set bash as the oracle user's shell. We will set
up Oracle basic environment (users, paths, locale) and some extra values needed
for Oracle to run correctly on Red Hat 9. Put the following lines at the end of
~/.bashrc:

If you are using other national settings for Oracle (these are Croatian),
consult the supported settings and change the NLS_LANG variable accordingly.

The Red Hat 9 Linux kernel comes with the new Native POSIX Thread Library,
which causes Oracle installation to hang. By setting the LD_ASSUME_KERNEL variable to an older kernel version, we are making Linux use the old Linuxthreads library. For more information about the difference between these threading methods, please consult the Red Hat 9 Release notes.