Nethence Newdoc Olddoc Lab Your IP BBDock  

Warning: those guides are mostly obsolete, please have a look at the new documentation.


Installing Oracle RAC 11gR2 on RHEL5 nodes
Part 2: system preparation for Oracle Grid and RDBMS
Enable an FTP daemon so you will be able to upload stuff to the oracle user later on. At least on one node,
rpm -q vsftpd
service vsftpd restart
chkconfig vsftpd on
and make sure xauth is installed on all nodes so you will be able to eventually launch Oracle graphical user interfaces remotely (Xming is just fine),
rpm -q xorg-x11-xauth
Make sure those packages are installed for Oracle Database (RDBMS) 11gR2,
rpm -q \
binutils \
compat-libstdc++-33 \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
sysstat | grep ^package
note. On 64-bit systems you also need the 32-bit version for those ones,
rpm -q --queryformat "%{NAME}-%{VERSION}.%{RELEASE} (%{ARCH})\n" \
compat-libstdc++-33 \
glibc \
glibc-devel \
libaio \
libaio-devel \
libgcc \
libstdc++ \
| grep ^package
also the ODBC drivers,
  rpm -q \
unixODBC \
unixODBC-devel \
| grep ^package
Ref. and go to the "Oracle Database Package Requirements for Linux x86-64" and "Additional Software Requirements" sections.
For Oracle Grid and otherwise you will also need those,
rpm -q \
pdksh \
smartmontools \
unzip \
xorg-x11-utils \
xorg-x11-apps \
| grep ^package
Note. In fact ksh isn't mandatory but 'pdksh' really is.
Note. the smartctl command (in smartmontools) is needed for the Oracle Grid installation script.
Tweak the file limits,
cd /etc/security/
cat >> limits.conf <<EOF9
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
Enable the limits,
cd /etc/pam.d/
cat >> login <<EOF9
session required
Further configure NTP (add the -x argument to the daemon for slew corrections only and eventually sync the hardware clock on non-virtualized systems),
cd /etc/sysconfig/
cp -i ntpd ntpd.dist
vi ntpd
OPTIONS="-x -u ntp:ntp -p /var/run/"
service ntpd restart
chkconfig ntpd on
Note. You do not need for -u for ntpdate if the NTP server is on your local network.
Note. Synchronize the hardware clock unless it's e.g. a XEN guest (even though you might have disabled the hwclock utility).
Create the groups and users (eventhough I am not using NFS here, using common UIDs and GIDs cannot be a bad practice),
groupadd -g 1000 oinstall
groupadd -g 1200 dba
useradd -u 1100 -g oinstall -G dba oracle
passwd oracle
Login as oracle user on both nodes with X11 forwarding enabled and configure your environment,
su - oracle
cat > .vimrc <<EOF9
syntax off
cat .bash_profile (should at least contain 'source $HOME/.bashrc') 
vi .bashrc
PS1='${HOSTNAME%%\.*}> '
ORACLE_HOSTNAME=racX.example.local; export ORACLE_HOSTNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
TMP=/tmp; export TMP
ulimit -u 16384 -n 65536
note. I will add ORACLE_HOME and edit the PATH later on.
note. Change ORACLE_HOSTNAME accordingly.
apply and switch back to the root account,
source .bash_profile
Prepare the directories for Oracle binaries (all nodes),
mkdir -p /u01/app/oracle/
mkdir -p /u01/app/11.2.0/grid/
ls -ld /u01/shared/
mount | grep rac
and fix the file permissions (one node only but it doesn't matter if you reiter),
cd /
find u01/
chown -R oracle:oinstall u01/
find u01/ -type d -exec chmod 770 {} \;
find u01/ -type f (should return nothing at this point) 

(obsolete, see the new doc)