One step procedure (uses less disk space and is faster): zcat lnx_920_disk1.cpio.gz cpio -idmv
zcat lnx_920_disk2.cpio.gz cpio -idmv zcat lnx_920_disk3.cpio.gz cpio -idmv
Now you should have 3 directories containing installation files: Disk1 Disk2 Disk3
2, Swap space
In order to perform a typical Oracle 9i installation and to create a simple prototype database, Oracle says that you need a minimum of 512MB of RAM for the Oracle9i (9.0.1) Server, and the amount of disk space (swap space) should be equal to twice the amount of RAM or at least 400 MB, whichever is greater.
Check your memory by executing: grep MemTotal /proc/meminfo
Check swap space by executing: cat /proc/swaps or swapon –s
You can also add temporary swap space by creating a temporary swap file instead of using a raw device. Here is the procedure:
It is recommended to increase the shmmax setting permanently for Oracle. So if you want to increase the maximum shared memory size permanently, add the following line to the /etc/sysctl.conf file: kernel.shmmax=1073741824
4,/tmp Space
The Oracle Universal Installer requires up to 400 MB of free space in the /tmp directory. If you do not have enough space in the /tmp directory, you can temporarily create a tmp directory in another filesystem. Here is how you can do this:
As root: mkdir /<AnotherFilesystem>/tmp chown root.root /<AnotherFilesystem>/tmp chmod 1777 /<AnotherFilesystem>/tmp export TEMP=/<AnotherFilesystem>/tmp # used by Oracle export TMPDIR=/<AnotherFilesystem>/tmp # used by Linux programs like the linker "ld"
When you are done with your Oracle installation, shutdown Oracle and remove the temporary directory: rmdir /<AnotherFilesystem>/tmp unset TEMP unset TMPDIR
5,Oracle Disk Space
You will need about 2.5 GB for the database software. If you perform a typical database installation and not a customized database installation, then you will need about 3.5 GB of disk space.
6,"binutils" Issue (if you fond following error )
Q: "Error invoking target install of makefile /opt/oracle/product/9.0.1/plsql/lib/ins_plsql.mk"
A: This obviates the need to change binutils
download the following binutil RPM version and downgrade binutil on the Oracle server: ftp://ftp.redhat.com/pub/redhat/linux/7.0/en/os/i386/RedHat/RPMS/binutils-2.10.0.18-1.i386.rpm As root: rpm -Uvh --force --nodeps binutils-2.10.0.18-1.i386.rpm When you are done with the Oracle installation, you upgrade your binutil RPM back to the version you had before you downgraded: E.g. on a Red Hat 7.2 server: rpm -Uvh --force --nodeps binutils-2.11.90.0.8-9.i386.rpm
7,Development Packages (RPMs)
You will need the following RPM development packages for the Oracle installer to compile the Oracle modules etc.: gcc cpp glibc-devel compat-libstdc++ kernel-headers (on RH 7.1, 7.2, 2.1AS) glibc-kernheaders (on RH 7.3, 8.0) binutils
Otherwise you'll get an error message like: Error in invoking target ntcontab.o of makefile /opt/oracle/product/9.2.0/network/lib/ins_net_client.mk
To find out if you have these development packages installed, execute the following command: # rpm -q gcc cpp glibc-devel kernel-headers binutils
8,JDK
I successfully installed Oracle9iR2 without installing JDK on the system.Oracle comes now with its own Java. This means that you don't have to follow these steps which were required for older Oracle versions:
Download JDK 1.3.1 or Blackdown 1.1.8_v3: (I usually used Blackdown) http://www.blackdown.org http://java.sun.com
According to JDK documentation, install JDK under /usr/local . Then create a symbolic link to the JDK under /usr/local/java :
As root: bzip2 -dc jdk118_v3-glibc-2.1.3.tar.bz2 tar xf - -C /usr/local ln -s /usr/local/jdk118_v3 /usr/local/java
Oinstall is not needed when the same people will be maintaining the software and the database. In this situation, it will create more work and add an extra layer of complexity to the maintenance of the installation.
Recommendation: if you don't need the oinstall group for added security, just install using the dba group.
10,Create Oracle Directories
In this example, make sure that the /opt filesystem is large enough. If /opt is not on a separate filesystem, then make sure the root filesystem "/" has enough space.
Set the following Oracle environment variables before you start runInstaller.
As the oracle user execute the following commands:
# Oracle Environment export ORACLE_BASE=/opt/oracle export ORACLE_HOME=/opt/oracle/product/9.2.0 export ORACLE_SID=test export ORACLE_TERM=xterm #export TNS_ADMIN= Set if sqlnet.ora, tnsnames.ora, etc. are not in $ORACLE_HOME/network/admin export NLS_LANG=AMERICAN #export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;(if you use Chinese) export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib export LD_LIBRARY_PATH
# Set shell search paths export PATH=$PATH:$ORACLE_HOME/bin
# I successfully installed Oracle9iR2 WITHOUT setting the following CLASSPATH environment variable: CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib export CLASSPATH
export TMPDIR=/tmp
You can put these environment settings at the end of the ~oracle/.bash_profile file if you use bash.
12,Start runInstaller
Oracle no longer supports a character mode installer. Therefore, in order to execute runInstaller directly from a console of a machine you are logged into (in this example the node name where Oracle is running is called "oracleserver"), you need to set the DISPLAY environment variable.
From the console of your Oracle server "oracleserver " you are logged into, execute the following command as user " oracle ": oracleserver:oracle$ export DISPLAY=yourlocalIP:0.0
13,Running Oracle Installation
This is how I answered the questions in the runInstaller:
What would you like as the base directory (Inventory Location): /opt/oracle/oraInventory
UNIX Group Name (permission for updating Oracle software): oinstall You could also use "dba" which I do not recommend for security reasons.(refer to step 9)
Full path name for Oracle Home: /opt/oracle/product/9.2.0
Oracle Home Name: OUIHome
14,You might get the following installation problems when you install Oracle 9i (9.2.0):
l First check always the error logs in /tmp/OraInstall for 9.2.0, e.g /tmp/OraInstall2002-07-04_09-50-19PM, and in /tmp/OraInstall for 9.0.1. When you get make problems check also $ORACLE_HOME/install/make.log.
l Q:"Error in invoking target install of makefile /opt/oracle/product/9.2.0/ctx/lib/ins_ctx.mk"
A:Edit $ORACLE_HOME/ctx/lib/env_ctx.mk and go to "INSO_LINK =", add a "$(LDLIBFLAG)dl" to the line and save it.
Here is the full line with the added "$(LDLIBFLAG)dl" flag: INSO_LINK = -L$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)dl $(LDLIBFLAG)sc_ca $(LDLIBFLAG)sc_fa $(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_fi $(LLIBCTXHX) $(LDLIBFLAG)c -Wl,-rpath,$(CTXHOME)lib $(CORELIBS) $(COMPEOBJS)
l Q:"Error invoking target install of makefile /opt/oracle/product/9.0.1/plsql/lib/ins_plsql.mk" "Error invoking target install of makefile /opt/oracle/product/9.0.1/precomp/lib/ins-precomp.mk" "Error invoking target install of makefile /opt/oracle/product/9.0.1/precomp/lib/ins-net-client" "Error invoking target install of makefile /opt/oracle/product/9.0.1/precomp/lib/ins-oemagent"
A:Edit the file $ORACLE_HOME/bin/genclntsh and change the following line (people have sent me emails pointing out that this also works for Mandrake 8.1 and Mandrake 8.2): LD_SELF_CONTAINED="-z defs" to read: LD_SELF_CONTAINED=""
Then run the script $ORACLE_HOME/bin/genclntsh as the user "oracle" and not as the user "root". Also make sure you have all the Oracle environments set!