Oracle9i in SLES9 container

From OpenVZ Virtuozzo Containers Wiki
Jump to: navigation, search

This small HOWTO is to help people to install Oracle 9i in SLES9-SP2 container. Installation of Oracle is quite a complicated procedure and actually has little to do anything with container or OpenVZ virtualization, but is frequently asked about.

Installation of other Oracle versions in other container OS can differ and should be decribed in separate Wiki pages.

Inside host system (CT0)[edit]

First, create and cache SLES9 x8664. You will need to install gcc, binutils and other packages required by Oracle either in SLES9 cache or alter directly inside the container.

Create a container based on latest SLES9 x86_64 template:

vzctl create $CTID --ostemplate sles-9-x86_64

Assign some IP address to the container:

vzctl set $CTID --ipadd $CT_IP_ADDRESS --save

Setup nameserver inside the container (/etc/resolv.conf):

vzctl set $CTID --nameserver $DNS_IP

Set enough resource limits inside the container (in this example ~2GB RAM):

vzctl set $CTID --save --applyconfig vps.2048MB

Set enough disk space for the container (e.g. to 15GB):

vzctl set $CTID --save --diskspace 15000000

Inside the container[edit]

All the following instructions are not OpenVZ/Virtuozzo specific and mostly taken as is from the official SUSE guide


Login to container and do the following:

Run yast and setup SLES9 repository or SLES9 CDs local repository, then install following packages:

 - glibc-devel-32bit
 - pdksh
 - libaio
 - libaio-devel

Now install "orarun" package from SLES9 SP2 CD2. You can use YaST setup tool or manual installation instruction to install orarun package.

After orarun package is installed enable 'oracle' user:

usermod -s /bin/bash oracle

Specify password for 'oracle' user

passwd oracle

Run rcoracle script to set kernel parameters. Ignore any errors.

/usr/sbin/rcoracle start

Create link for libdb library:

ln -s /usr/lib/libdb.so.3 /usr/lib/libdb.so.2

Setup graphical access to the container via ssh or via vnc, at your choice:

  • For access via ssh:
    • Change X11Forwarding in /etc/ssh/sshd_config to 'yes' inside the container
    • Restart sshd inside the container (/etc/init.d/sshd restart)
    • Login to the container via ssh with '-X' option (run this command from your

host):

ssh -X oracle@$CT_ADDRESS
  • For access via VNC, do inside container:
    • Install XFree86, XFree86-Vnc packages inside the container
    • Login to the container as 'oracle' (run this command from your host):
ssh oracle@$CT_ADDRESS
    • start VNC server:
Xvnc :0 &
    • set DISPLAY environment variable:
export DISPLAY=:0
    • From your host attach to vnc screen (run this command from your host):
vncviewer $CT_ADDRESS:0
Yellowpin.svg Note: this may require to use vncviewer from SLES9 OS, since newer

vncviewer's are not compatible with it.

Now, as 'oracle' user inside the container:

Get Oracle 9iR2 (9204) Software from oracle web or use your Oracle Disks. If you have downloaded SW then gunzip and cpio files.

gunzip $file_name
cpio command: cpio -idmv < file_name

It will create three directory Disk1, Disk2 and Disk3.

Finally start oracle installer (under oracle user):

Disk1/runInstaller

and carefully follow installation instructions.

After the installation succeeds oracle automaticaly runs a created by default database instance, so you can use sqlplus to test it.


NOTE: Oracle 9i installation on SLES9 is tricky and requires a lot of steps and workarounds described in official papers and in the internet. The following links may be helpful.

External links[edit]