How to install and deploy Oracle Real Application Clusters on a single
Linux
server with a minimal configuration (less than $1000 worth of hardware):
First of all to install Oracle cluster database you DON'T HAVE to have a
cluster, but a
single PC may do as well (of course thi kind of installation will not
be of
much use for a production DB). A minimal server that I HAVE TESTED is:
Celeron 750 MhZ, 512 Mb of RAM, 2 IDE HD, Linux Suse 7.2
This document contains the steps needed to deploy a working Oracle 9i
Database with a
minimal comment. For a complete discussion refer to Oracle
documentation,
namely:
Oracle 9i administrator's reference part number A90347-02
Oracle 9i Linux release notes part number A90356-01
Oracle 9i Real Application Clusters Administration part numebr A89869-01
1) set up the partitions to user for Oracle software and the ones to
use as
raw devices
for the cluster DB. Soppose you want to you use an HD mounted as the
3rd
IDE device
(/dev/hdc) for the cluster DB. Then you have to partition it with
fdisk
with a large
extended partition (say hdc1). Create a large number of logical
partitions inside hdc1
(say hdc5 till hdc20) of about 300 Mb in size (all of the same size
for
simplicity).
2) Real application clusters wants to store the DB strutures into raw
devices or a
cluster filesystem. Create the raw devices using the following
command
(as superuser):
raw /dev/raw1 /dev/hdc5
raw /dev/raw2 /dev/hdc6 ... etc till /dev/hdc20
you will need to repeat these steps after every boot
3) Set up the Oracle user (already done with the Suse distribution),
environment variables
and mount point.
Install Oracle software enterprise edition
4) Complete the installation with a custom install of the real
application
cluster option.
This will add a directory called oracm under your oracle home, which
contains the
cluster manager software
5) edit $ORACLE_HOME/oracm/admin/nmcfg.ora, it contains 3 lines for the
set-up of the
cluster manager sofware:
DefinedNodes=localhost
CmDiskFiles=/dev/raw2
CmHostName=localhost
6) edit /var/opt/oracle/srvConfig.loc. It contains 1 line with the
location
of a raw device
used to sync the cluster nodes:
srvconfig_loc=/dev/raw1
7) start the cluster manager software (as superuser):
$ORACLE_HOME/oracm/bin/ocmstart.sh
8) as the oracle user start the global cache service:
gsd
9) you can now create a cluster db. to use the configuration assistant
you
need to set
an extra environment variable:
export THREADS_FLAG=native
10) start the configuration assistant: dbca
expect some errors in the script the dbca generates, best is to
review
them before
execution
11) after the db creation you'll be able to start two instances on the
same
DB,
which means you will have a cluster DB!
12) the environment variable ORACLE_SID will determine the instance to
which
you can
connect by means of a special syntax: SID.parameter=value
this is used for example for paramters like instance_number,
thread, etc
also the parameter cluster_database must be set to true
All these problems are normaly handled by the dbca.
NOTE: to set up a multi-node cluster you need to have at least: 2 PC
with
SCSI controllers (one
of them must have a BIOS), at least 1 SCSI HD which is shared between
the 2
PCs (it is
connected to the 2 controllers). Having all that, you can set up the raw
devices on the PCs
and share them between the 2 installations of 9i RAC. The cluster
manager
must be properly configured and started on both nodes in a similar, but
extended, step (5).
Have fun,
Luca Canali
OCP-DBA
--
Please see the official ORACLE-L FAQ: http://www.orafaq.com
--
Author: [EMAIL PROTECTED]
INET: [EMAIL PROTECTED]
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051
San Diego, California -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from). You may
also send the HELP command for other information (like subscribing).