Database Reference
In-Depth Information
There is a loop in /etc/init.d/init.cssd that calls crsctl check boot until it returns exit
code 0. With all voting disks offline, this will never happen, so CRS loops forever. 3
# crsctl check boot
Failure reading from offset 2560 in device votedisk
Failure 1 checking the CSS voting disk 'votedisk'.
Not able to read adequate number of voting disks
# echo $?
6
Another way to simulate the failure of voting disks as well as any other files such as the
Oracle Cluster Registry, ASM disks, or data files, is to overwrite the first few blocks with binary
zeros. This can be done with the following dd (device dump) command:
dd if=/dev/zero bs=8192 count=2 of=voting_disk_file
Obviously this is a destructive test, so you need to take a backup of your voting disks with
dd before you attempt this. However, it has the advantage that it can be performed while Oracle
Clusterware is running, whereas the raw command cannot remap a device that is in use. 4 Errors
caused by this latter test are properly reported in the documented log files below
$ORA_CRS_HOME/log/ nodename .
Back to my initial claim that an oracle executable with RAC linked in cannot be used to
start a DBMS instance, unless Oracle Clusterware is functional. In case ASM is used, an ASM
instance must be started before the DBMS instance. Here's some evidence (run SQL*Plus as
the owner of the ORACLE installation):
$ env ORACLE_SID=+ASM1 sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Thu Jul 26 02:35:22 2007
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to an idle instance.
SQL> STARTUP
ORA-29701: unable to connect to Cluster Manager
For completeness, let's confirm that a similar error is reported by an RDBMS instance.
$ env ORACLE_SID=TEN1 sqlplus / as sysdba
SQL> STARTUP NOMOUNT
ORA-29702: error occurred in Cluster Group Service operation
Even STARTUP NOMOUNT does not work when Cluster Group Services are unavailable.
Removing the RAC Option with the Make Utility
As long as ASM is not in use, it is very easy to convert the oracle executable from RAC to single
instance and to get one instance in the cluster running. Calling make as the owner of the ORACLE
installation (usually oracle) and specifying the undocumented make target rac_off does the job.
3.
The same happens when all copies of the OCR are unavailable. The error reported in my test was “OCR
initialization failed accessing OCR device: PROC-26: Error while accessing the physical storage Operating
System error [Success] [0]”.
4.
The error thrown is “Error setting raw device (Device or resource busy)”.
 
Search WWH ::




Custom Search