Nethence Newdoc Olddoc Lab Your IP BBDock  


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

UnixWindowsOracleObsoleteHardwareDIYMechanicsScriptsConfigs

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. http://docs.oracle.com/cd/E11882_01/install.112/e24321/pre_install.htm#CIHFICFD 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 root.sh 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
EOF9
 
Enable the limits,
cd /etc/pam.d/
cat >> login <<EOF9
session required pam_limits.so
EOF9
 
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/ntpd.pid"
SYNC_HWCLOCK=yes
NTPDATE_OPTIONS="-u"
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
EOF9
cat .bash_profile (should at least contain 'source $HOME/.bashrc') 
vi .bashrc
add,
PS1='${HOSTNAME%%\.*}> '
ORACLE_HOSTNAME=racX.example.local; export ORACLE_HOSTNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
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
^D
 
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)