Oracle9i (9.2.0.1.0) Installation on RedHat 9.0 Linux
This article is intended as a brief guide to installing Oracle9i (9.2.0.1.0) on RedHat 9.0 Linux. For additional information and platform variations read the Installation Guide for UNIX Systems.Download Software
Download Sun's Java Development Kit (JDK 1.3.1).Download the Oracle installation files from otn.oracle.com.
Unpack Files
First unzip the files:Next unpack the contents of the files:gunzip lnx_920_disk1.cpio.gz gunzip lnx_920_disk2.cpio.gz gunzip lnx_920_disk3.cpio.gz
You should now have three directories (Disk1, Disk2 and Disk3) containing installation files.cpio -idmv < lnx_920_disk1.cpio cpio -idmv < lnx_920_disk2.cpio cpio -idmv < lnx_920_disk3.cpio
Some sources suggest loading the following compatibility libraries but I've not found this to be necessary:
These files can be found in the RPMS directories of CD1 and CD2 of the RedHat installation media.compat-gcc-7.3-2.96.118.i386.rpm compat-libgcj-7.3-2.96.118.i386.rpm compat-libgcj-devel-7.3-2.96.118.i386.rpm nss_db-compat-2.2-20.i386.rpm
Set Kernel Parameters
The following table contains minimum kernel settings. If the current settings exceed these figures then do not alter them:| Parameter | Minimum Setting |
| SEMMNI | 100 |
| SEMMNS | 256 |
| SEMOPM | 100 |
| SEMMSL | 100 |
| SHMMAX | 2147483648 |
| SHMMIN | 1 |
| SHMMNI | 100 |
| SHMSEG | 4096 |
| SHMVMX | 32767 |
The current semaphore settings can be viewed using the following command:
The values listed are for the SEMMSL, SEMMNS, SEMOPM, and SEMMNI parameters. The adjusted values can be set using:cat /proc/sys/kernel/sem 250 32000 32 128
The shared memory settings can be viewed using the following command:# echo SEMMSL_value SEMMNS_value SEMOPM_value SEMMNI_value > /proc/sys/kernel/sem echo 250 32000 100 128 > /proc/sys/kernel/sem
The values can be set using:cat shared_memory_parameter
Set the File Handles, Sockets and Process limit using:echo 2147483648 > /proc/sys/kernel/shmmax
The necessary parameter changes can be combined in a script and run during system startup:echo 65536 > /proc/sys/fs/file-max ulimit -n 65536 echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range ulimit -u 16384
Alternatively the following lines can be added to the /etc/sysctl.conf file:echo 250 32000 100 128 > /proc/sys/kernel/sem echo 65536 > /proc/sys/fs/file-max ulimit -n 65536 echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range ulimit -u 16384
In addition the following lines can be added to the /etc/security/limits.conf file:kernel.shmmax = 2147483648 kernel.shmmni = 128 kernel.shmall = 2097152 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000
Adding lines into these files requires a reboot before they take effect.oracle soft nofile 65536 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384
Setup
Install the Java development kit:Create the new groups and users:tar -xvjf j2sdk-1.3.1-FCS-linux-i386.tar.bz2 -C /usr/local/
Create the directories in which the Oracle software will be installed:groupadd oinstall groupadd dba groupadd oper groupadd apache useradd -g oinstall -G dba oracle passwd oracle useradd -g oinstall -G apache apache passwd apache
Login as root and issue the following command:mkdir -p /u01/app/oracle/product/9.2.0.1.0 chown -R oracle.oinstall /u01
Login as the oracle user and add the following lines at the end of the .bash_profile file:xhost +<machine-name>
Save the .bash_profile file and re-login as the oracle user. Make sure the .bash_profile ran correctly by issuing the following command:# Oracle 9i ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/9.2.0.1.0; export ORACLE_HOME ORACLE_TERM=xterm; export ORACLE_TERM PATH=$ORACLE_HOME/bin:$PATH:/usr/local/java131/bin; export PATH ORACLE_OWNER=oracle; export ORACLE_OWNER ORACLE_SID=TSH1; export ORACLE_SID LD_LIBRARY_PATH=$ORACLE_HOME/lib; export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNEL THREADS_FLAG=native; export THREADS_FLAG TMP=/tmp; export TMP TMPDIR=$TMP; export TMPDIR
set | more
Installation
Log into the oracle user. If you are using X emulation then set the DISPLAY environmental variable:Start the Oracle Universal Installer (OUI) by issuing the following command in the Disk1 directory:DISPLAY=<machine-name>:0.0; export DISPLAY
Continue with the installation as normal../runInstaller
The installation will produce two errors:
- Problems with ins_oemagent.mk.
- "Error in invoking target install of makefile $ORACLE_HOME/ctx/lib/ins_ctx.mk".
When the second error occurs open up a new console, login as the oracle user and execute the following commands:
You will see a line like:cd $ORACLE_HOME/install tail make.log
Copy this line, add -ldl at the end and run it in the $ORACLE_HOME/bin directory:gcc -o ctxhx -L/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ -L/u01/app/oracle/product/9.2.0.1.0/lib/ -L/u01/app/oracle/product/9.2.0.1.0/lib/stubs/ /u01/app/oracle/product/9.2.0.1.0/ctx/lib/ctxhx.o -L/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut -lsc_ch -lsc_fi -lctxhx -lc -Wl,-rpath,/u01/app/oracle/product/9.2.0.1.0/ctx/lib -lnls9 -lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9
Once this is complete click the ignore button on the error dialog and continue with the installation.cd $ORACLE_HOME/bin gcc -o ctxhx -L/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ -L/u01/app/oracle/product/9.2.0.1.0/lib/ -L/u01/app/oracle/product/9.2.0.1.0/lib/stubs/ /u01/app/oracle/product/9.2.0.1.0/ctx/lib/ctxhx.o -L/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut -lsc_ch -lsc_fi -lctxhx -lc -Wl,-rpath,/u01/app/oracle/product/9.2.0.1.0/ctx/lib -lnls9 -lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9 -ldl
During the configuration steps you may be informed that the agent failed to start. Ignore this error as we will fix it in the post installation step.
Post Installation
Open up a console, login as the oracle user and execute these lines:Then edit the $ORACLE_HOME/ctx/lib/ins_ctx.mk file so that lines 13-14 change from:cd $ORACLE_HOME/network/lib make -f ins_net_client.mk install
to:ctxhx: $(CTXHXOBJ) $(LINK) $(CTXHXOBJ) $(INSO_LINK)
The execute the following command:ctxhx: $(CTXHXOBJ) $(LINK) -ldl $(CTXHXOBJ) $(INSO_LINK)
The agent can now be started using:make -f $ORACLE_HOME/ctx/lib/ins_ctx.mk install
Edit the /etc/oratab file setting the restart flag for each instance to 'Y':/u01/app/oracle/product/9.2.0.1.0/bin/agentctl start
For more information see:TSH1:/u01/app/oracle/product/9.2.0.1.0:Y
- Installation Guide for UNIX Systems
- Installing Oracle 9i on RedHat Linux 7.1, 7.2, 7.3, 8.0, 9 and on Red Hat Advanced Server 2.1
- Oracle on Linux
- Automating Database Startup and Shutdown on Linux
Back to the Top.
