Installing Oracle 11g on Fedora 12

Install Software Packages

Oracle 11g requires some software packages that may not have been installed on your system. Run the following yum command to install them:

yum install libaio libaio-devel

It also requires the pdksh package, version 5.2.14, which is not available on many modern linux systems. Versions for older linux systems may be found at rpmfind. You could either build and instal an rpm for your system from a source rpm or just try an older version and see if it works on your system.

Configure the Kernel

Oracle 11g requires that you at least temporarily increase the values of a couple of kernel parameters. To temporarily increase these values, follow these instructions (as root):

echo 6815744 > /proc/sys/fs/file-max
echo "9000 65500" > /proc/sys/net/ipv4/ip_local_port_range
echo 262144 > /proc/sys/net/core/rmem_default
echo 4194304 > /proc/sys/net/core/rmem_max
echo 262144 > /proc/sys/net/core/wmem_default
echo 1048576 > /proc/sys/net/core/wmem_max
echo 1048576 > /proc/sys/fs/aio-max-nr
echo 2097152 > /proc/sys/kernel/shmall
echo 2147483648 > /proc/sys/kernel/shmmax
echo 4096 > /proc/sys/kernel/shmmni
echo "250 32000 100 128" > /proc/sys/kernel/sem

Install Oracle

Now, log in as the oracle user.

Since Oracle 11.2.0 uses a graphical installer, you need to be running X Windows or point the DISPLAY environment variable to an X Windows session running somewhere.

I have had problems with the graphical installer on enlightenment and fluxbox window managers in the past, though they may work for you.

If you have a CD, mount it and cd to the mount point. If you have a zip distribution, extract the file using:

Change directories to the database directory.

Type ./runInstaller

On the first screen, leave the Email box blank, uncheck the box next to I wish to receive security updates via My Oracle Support and click Next.

When the Email Address Not Specified popup appears, click Yes.

On the Select Installation Option screen, accept the default Create and configure a databaseand click Next.

On the System Class screen, accept the default Desktop Class and click Next.

On the Typical Install Configuration screen, change the Global database name from "orcl.localdomain" to "ora1.localdomain". Enter a password in the Administrative Password and Confirm Password boxes. Click Next

On the Create Inventory screen, accept the defaults and click Next

On the Perform Prerequisite Checks screen, operating system requirements will be checked. When it's done, click Next.

Some of the prerequisite checks have failed. Many are likely tunable system parameters and may be fixed by clicking Fix & Check Again and following the instructions. Others, such as missing packages, may not be fixable by the installer and may require manual intervention. After fixing them, click Check Again. When all is well, a Summary screen will appear. Click Finish.

On the Oracle Configuration Manager Registration screen, just click Next.

On the Summary screen, click Install

The Install Product screen will show the progress of the installation

A Database Configuration Assistant dialog should pop up. The image on the left hand side will change regularlry, but the dialog itself may not display anything. Ignore this, the configuration is occurring.

When database creation is complete, a dialog will pop up with a summary. Click OK.

A dialog will pop up asking you to run some scripts as root. Just follow the directions on the dialog and click Ok

On the Finish screen click Close


During my installation, several directories got created with "localhost" in their names, but then various utilities expected directories with "localhost.localdomain" in them. I created symbolic links to resolve the problem:

cd /u01/app/oracle/product/11.2.0
ln -s localhost_ora1 localhost.localdomain_ora1
cd oc4j/j2ee
ln -s OC4J_DBConsole_localhost_ora1 OC4J_DBConsole_localhost.localdomain_ora1

You may or may not run into the same problem.

During the installation, several ancillary processes were started. You can shut some of them down by executing the following commands (as oracle):

emctl stop dbconsole

At this point, only the database and tns listener should be running.

During the installation, the tnsnames.ora file which tells clients how to connect to the database will most likely have been created in 640 mode, leaving it unreadable by anyone not in the oinstall group. There are 2 options here, either add every user that you want to be able to access oracle to the oinstall group, or change permissions on tnsnames.ora to make it world-readable. If you opt for the latter, you can do so using the following command:

chmod o+r /u01/app/oracle/product/11.2.0/network/admin/tnsnames.ora