RAC Attack - Oracle Cluster Database at Home/Install Database Software

 Login to collabn1 as the oracle user and open a terminal. Run CLUVFY to check that you're ready to start the DB install. The memory, swap and NTP/time checks may fail but everything else should succeed.

[oracle@collabn1 ~]$ /mnt/cdrom*/grid/runcluvfy.sh stage -pre dbinst  -n collabn1,collabn2 -r 11gR2 Performing pre-checks for database installation Checking node reachability... Node reachability check passed from node "collabn1" Checking user equivalence... User equivalence check passed for user "oracle" Checking node connectivity... Checking hosts config file... Verification of the hosts config file successful Node connectivity passed for subnet "192.168.78.0" with node(s) collabn2,collabn1 TCP connectivity check passed for subnet "192.168.78.0" Node connectivity passed for subnet "172.16.100.0" with node(s) collabn2,collabn1 TCP connectivity check passed for subnet "172.16.100.0" Interfaces found on subnet "192.168.78.0" that are likely candidates for VIP are: collabn2 eth0:192.168.78.52 eth0:192.168.78.250 eth0:192.168.78.62 collabn1 eth0:192.168.78.51 eth0:192.168.78.61 Interfaces found on subnet "172.16.100.0" that are likely candidates for a private interconnect are: collabn2 eth1:172.16.100.52 collabn1 eth1:172.16.100.51 Node connectivity check passed Total memory check failed Check failed on nodes: collabn2,collabn1 Available memory check passed Swap space check failed Free disk space check passed for "collabn2:/u01/grid/oracle/product/11.2.0/grid_1,collabn2:/tmp" Free disk space check passed for "collabn1:/u01/grid/oracle/product/11.2.0/grid_1,collabn1:/tmp" User existence check passed for "oracle" Group existence check passed for "oinstall" Group existence check passed for "dba" Membership check for user "oracle" in group "oinstall" [as Primary] passed Membership check for user "oracle" in group "dba" passed Run level check passed Hard limits check passed for "maximum open file descriptors" Soft limits check passed for "maximum open file descriptors" Hard limits check passed for "maximum user processes" Soft limits check passed for "maximum user processes" System architecture check passed Kernel version check passed Kernel parameter check passed for "semmsl" Kernel parameter check passed for "semmns" Kernel parameter check passed for "semopm" Kernel parameter check passed for "semmni" Kernel parameter check passed for "shmmax" Kernel parameter check passed for "shmmni" Kernel parameter check passed for "shmall" Kernel parameter check passed for "file-max" Kernel parameter check passed for "ip_local_port_range" Kernel parameter check passed for "rmem_default" Kernel parameter check passed for "rmem_max" Kernel parameter check passed for "wmem_default" Kernel parameter check passed for "wmem_max" Kernel parameter check passed for "aio-max-nr" Package existence check passed for "make-3.81" Package existence check passed for "binutils-2.17.50.0.6" Package existence check passed for "gcc-4.1.2" Package existence check passed for "libgomp-4.1.2" Package existence check passed for "libaio-0.3.106" Package existence check passed for "glibc-2.5-24" Package existence check passed for "compat-libstdc++-33-3.2.3" Package existence check passed for "elfutils-libelf-0.125" Package existence check passed for "elfutils-libelf-devel-0.125" Package existence check passed for "elfutils-libelf-devel-static-0.125" Package existence check passed for "glibc-common-2.5" Package existence check passed for "glibc-devel-2.5" Package existence check passed for "glibc-headers-2.5" Package existence check passed for "kernel-headers-2.6.18" Package existence check passed for "gcc-c++-4.1.2" Package existence check passed for "libaio-devel-0.3.106" Package existence check passed for "libgcc-4.1.2" Package existence check passed for "libstdc++-4.1.2" Package existence check passed for "libstdc++-devel-4.1.2" Package existence check passed for "sysstat-7.0.2" Package existence check passed for "unixODBC-2.2.11" Package existence check passed for "unixODBC-devel-2.2.11" Package existence check passed for "ksh-20060214" Check for multiple users with UID value 0 passed Current group ID check passed Default user file creation mask check passed Checking CRS integrity... CRS integrity check passed Checking Cluster manager integrity... Checking CSS daemon... Oracle Cluster Synchronization Services appear to be online. Cluster manager integrity check passed Checking if Clusterware is installed on all nodes... Check of Clusterware install passed Checking if CTSS Resource is running on all nodes... CTSS resource check passed Querying CTSS for time offset on all nodes... Query of CTSS for time offset passed Check CTSS state started... CTSS is in Observer state. Switching over to clock synchronization checks using NTP Starting Clock synchronization checks using Network Time Protocol(NTP)... NTP Configuration file check started... NTP Configuration file check passed Checking daemon liveness... Liveness check failed for "ntpd" Check failed on nodes: collabn2,collabn1 PRVF-5415 : Check to see if NTP daemon is running failed Clock synchronization check using Network Time Protocol(NTP) failed PRVF-9652 : Cluster Time Synchronization Services check failed Checking time zone consistency... Time zone consistency check passed. Pre-check for database installation was unsuccessful on all the nodes.

 Launch the database installer with /mnt/cdrom*/database/runInstaller.

 On the first screen, leave the email blank and uncheck the "security update" option. Click NEXT to continue. Choose YES to verify that you don't want to enter an email address.

 Choose to Install Database Software Only and click NEXT.

 Choose Real Application Clusters database installation and select all nodes. Click NEXT to continue.

 Select the English language and click NEXT.

 Choose Enterprise Edition install and click NEXT.

</li><li style="margin-top:3em"> Confirm that the ORACLE_BASE is /u01/app/oracle and change the ORACLE_HOME to /u01/app/oracle/product/11.2.0/db_1. Click NEXT to continue.

</li><li style="margin-top:3em"> Verify that the OSDBA group is dba and the OSOPER group is oper. Click NEXT to continue.

</li><li style="margin-top:3em"> The prerequisite checks will execute. A warning will be issued saying that three checks failed: physical memory, swap size and network time protocol. Click the CHECK BOX to Ignore All, then click NEXT.

</li><li style="margin-top:3em"> SAVE a response file called db.rsp in the oracle user home directory. Then click FINISH to install the oracle database software.



</li><li style="margin-top:3em"> When prompted, open a terminal as the root user and run the root.sh script. Enter /usr/bin as the local bin directory and overwrite the files which were previously installed by grid infrastructure. Make sure to run it on BOTH NODES!

[oracle@collabn1 ~]$ su - Password: racattack [root@collabn1 ~]# /u01/app/oracle/product/11.2.0/db_1/root.sh Running Oracle 11g root.sh script... The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1 Enter the full pathname of the local bin directory: [/usr/local/bin]: /usr/bin The file "dbhome" already exists in /usr/bin. Overwrite it? (y/n) [n]: y Copying dbhome to /usr/bin ... The file "oraenv" already exists in /usr/bin. Overwrite it? (y/n) [n]: y Copying oraenv to /usr/bin ... The file "coraenv" already exists in /usr/bin. Overwrite it? (y/n) [n]: y Copying coraenv to /usr/bin ... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root.sh script. Now product-specific root actions will be performed. Finished product-specific root actions.

[root@collabn1 ~]# ssh collabn2 root@collabn2's password: racattack Last login: Tue Apr 15 19:34:33 2008 from 192.168.78.1 [root@collabn2 ~]# /u01/app/oracle/product/11.2.0/db_1/root.sh Running Oracle 11g root.sh script... The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1 Enter the full pathname of the local bin directory: [/usr/local/bin]: /usr/bin The file "dbhome" already exists in /usr/bin. Overwrite it? (y/n) [n]: y Copying dbhome to /usr/bin ... The file "oraenv" already exists in /usr/bin. Overwrite it? (y/n) [n]: y Copying oraenv to /usr/bin ... The file "coraenv" already exists in /usr/bin. Overwrite it? (y/n) [n]: y Copying coraenv to /usr/bin ... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root.sh script. Now product-specific root actions will be performed. Finished product-specific root actions.

</li><li style="margin-top:3em"> After running both scripts, return to the installer window and click OK to finish the installation. You should now see the final screen! Click CLOSE to exit the installer.

</li></ol>

Previous on ASM track: Setup ASM

Previous on Shared Filesystem track: Increase CRS Fencing Timeout (Shared Filesystem)