Short Guide to install Oracle 9.2.0 on SUN Solaris 8

The following, short Installation Guide shows how to install Oracle 9.2.0 for SUN Solaris 8. You may download our scripts to create a database, we suggest this way and NOT using DBASSIST. Besides this scripts, you can download our SQLNET configuration files TNSNAMES.ORA. LISTENER.ORA and SQLNET.ORA.

Check Hardware Requirements
Operating System Software Requirements
Java Runtime Environment (JRE)
Check Software Limits
Setup the Solaris Kernel
Create Unix Group «dba»
Create Unix User «oracle»
Setup ORACLE environment ($HOME/.profile) as follows
Install from CD-ROM ...
... or Unpacking downloaded installation files
Check oraInst.loc File
Install with Installer in interactive mode
Create the Database
Start Listener
Automatically Start / Stop the Database
Install Oracle Options (optional)
Download Scripts for Sun Solaris

For our installation, we used the following ORACLE_HOME and ORACLE_SID, please adjust these parameters for your own environment.

  • ORACLE_HOME = /opt/oracle/product/9.2.0


Check Hardware Requirements

Minimal Memory: 256 MB
Minimal Swap Space: Twice the amount of the RAM

To determine the amount of RAM memory installed on your system, enter the following command.

$ /usr/sbin/prtconf

To determine the amount of SWAP installed on your system, enter the following command and multiply the BLOCKS column by 512.

$ swap -l

Use the latest kernel patch from Sun Microsystems (http://sunsolve.sun.com)

Operating System Software Requirements

Use the latest kernel patch from Sun Microsystems.

- Download the Patch from: http://sunsolve.sun.com
- Read the README File included in the Patch
- Usually the only thing you have to do is:

$ cd <patch cluster directory>
$ ./install_custer
$ cat /var/sadm/install_data/<luster name>_log
$ showrev -p

- Reboot the system

To determine your current operating system information:

$ uname -a

To determine which operating system patches are installed:

$ showrev -p

To determine which operating system packages are installed:

$ pkginfo -i [package_name]

To determine if your X-windows system is working properly on your local system, but you can redirect the X-windows output to another system.

$ xclock

To determine if you are using the correct system executables:

$ /usr/bin/which make
$ /usr/bin/which ar
$ /usr/bin/which ld
$ /usr/bin/which nm

Each of the four commands above should point to the /usr/ccs/bin directory. If not, add /usr/ccs/bin to the beginning of the PATH environment variable in the current shell.

Java Runtime Environment (JRE)

The JRE shipped with Oracle9i is used by Oracle Java applications such as the Oracle Universal Installer is the only one supported. You should not modify this JRE, unless it is done through a patch provided by Oracle Support Services. The inventory can contain multiple versions of the JRE, each of which can be used by one or more products or releases. The Installer creates the oraInventory directory the first time it is run to keep an inventory of products that it installs on your system as well as other installation information. The location of oraInventory is defined in /var/opt/oracle/oraInst.loc. Products in an ORACLE_HOME access the JRE through a symbolic link in $ORACLE_HOME/JRE to the actual location of a JRE within the inventory. You should not modify the symbolic link.

Check Software Limits

Oracle9i includes native support for files greater than 2 GB. Check your shell to determine whether it will impose a limit.

To check current soft shell limits, enter the following command:

$ ulimit -Sa

To check maximum hard limits, enter the following command:

$ ulimit -Ha

The file (blocks) value should be multiplied by 512 to obtain the maximum file size imposed by the shell. A value of unlimited is the operating system default and is the maximum value of 1 TB.

Setup the Solaris Kernel

Set to the sum of the PROCESSES parameter for each Oracle database, adding the largest one twice, then add an additional 10 for each database. For example, consider a system that has three Oracle instances with the PROCESSES parameter in their initSID.ora files set to the following values:


The value of SEMMNS is calculated as follows:

SEMMNS = [(A=100) + (B=100)] + [(C=200) * 2] + [(# of instances=3) * 10] = 630

Setting parameters too high for the operating system can prevent the machine from booting up. Refer to Sun Microsystems Sun SPARC Solaris system administration documentation for parameter limits.

* Kernel Parameters on our SUN Enterprise with 640MB for Oracle 9
set shmsys:shminfo_shmmax=4294967295
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=10
set semsys:seminfo_semmni=100
set semsys:seminfo_semmsl=100
set semsys:seminfo_semmns=2500
set semsys:seminfo_semopm=100
set semsys:seminfo_semvmx=32767

Create Unix Group «dba»

$ groupadd -g 400 dba
$ groupdel dba

Create Unix User «oracle»

$ useradd -u 400 -c "Oracle Owner" -d /export/home/oracle \
  -g "dba" -m -s /bin/ksh oracle

Setup ORACLE environment ($HOME/.profile) as follows

# Setup ORACLE environment

ORACLE_HOME=/opt/oracle/product/9.2.0; export ORACLE_HOME
TNS_ADMIN=/export/home/oracle/config/9.2.0; export TNS_ADMIN
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33

# Set up the search paths:

export PATH

# CLASSPATH must include the following JRE location(s):


Install from CD-ROM ...

Usually the CD-ROM will be mounted automatically by the Solaris Volume Manager, if not, do it as follows as user root.

$ su root
$ mkdir /cdrom
$ mount -r -F hsfs /dev/.... /cdrom

exit or CTRL-D

... or Unpacking downloaded installation files

If you downloaded database installation files from Oracle site (901solaris_disk1.cpio.gz, 901solaris_disk2.cpio.gz and 901solaris_disk3.cpio.gz) gunzip them somewhere and you'll get three .cpio files. The best way to download the huge files is to use the tool GetRight ( http://www.getright.com/ )

$ cd <somewhere>
$ mkdir Disk1 Disk2 Disk3
$ cd Disk1
$ gunzip 901solaris_disk1.cpio.gz
$ cat 901solaris_disk1.cpio | cpio -icd

This will extract all the files for Disk1, repeat steps for Disk2 and Disk3. Now you should have three directories (Disk1, Disk2 and Disk3) containing installation files.

Check oraInst.loc File

If you used Oracle before on your system, then you must edit the Oracle Inventory File, usually located in: 


Install with Installer in interactive mode

Install Oracle 9i with Oracle Installer

$ cd /Disk1
$ DISPLAY=<Any X-Window Host>:0.0
$ export DISPLAY
$ ./runInstaller

Answer the questions in the Installer, we use the following install directories

Inventory Location: /opt/oracle/product/oraInventory
Oracle Universal Installer in: /opt/oracle/product/oui
Java Runtime Environment in: /opt/oracle/product/jre/1.1.8

Edit the Database Startup Script /var/opt/oracle/oratab


Create the Database

Edit and save the CREATE DATABASE File initTYP2.sql in $ORACLE_HOME/dbs, or create a symbolic-Link from $ORACLE_HOME/dbs to your Location.

$ cd $ORACLE_HOME/dbs
$ ln -s /export/home/oracle/config/9.2.0/initTYP2.ora initTYP2.ora
$ ls -l

initTYP2.ora -> /export/home/oracle/config/9.2.0/initTYP2.ora

First start the Instance, just to test your initTYP2.ora file for correct syntax and system resources.

$ cd /export/home/oracle/config/9.2.0/
$ sqlplus /nolog
SQL> connect / as sysdba
SQL> startup nomount
SQL> shutdown immediate

Now you can create the database

SQL> @initTYP2.sql
SQL> @shutdown immediate
SQL> startup

Check the Logfile: initTYP2.log

Start Listener

$ lsnrctl start LSNRTYP2

Automatically Start / Stop the Database

To start the Database automatically on Boot-Time, create or use our Startup Scripts dbora and lsnrora (included in ora_config_sol_920.tar.gz), which must be installed in /etc/init.d. Create symbolic Links from the Startup Directories.

lrwxrwxrwx 1 root root S99dbora -> ../init.d/dbora*
lrwxrwxrwx 1 root root S99lsnrora -> ../init.d/lsnrora*

Install Oracle Options (optional)

You may want to install the following Options:

  • Oracle JVM
  • Orcale XML
  • Oracle Spatial
  • Oracle Ultra Search
  • Oracle OLAP
  • Oracle Data Mining
  • Example Schemas

Run the following script install_options.sh to enable this options in the database. Before running this scripts adjust the initSID.ora paramaters as follows for the build process. After this, you can reset the paramters to smaller values.

parallel_automatic_tuning = false
shared_pool_size = 200000000
java_pool_size = 100000000

$ ./install_options.sh

Download Scripts for Sun Solaris

These Scripts can be used as Templates. Please note, that some Parameters like ORACLE_HOME, ORACLE_SID and PATH must be adjusted on your own Environment. Besides this, you should check the initSID.ora Parameters for your Database (Size, Archivelog, ...)

Click here for the download (ora_config_sol_920.tar.gz)