Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> 10g ASM Startup After Reboot

10g ASM Startup After Reboot

From: Andy Rivenes <arivenes_at_llnl.gov>
Date: Tue, 30 Nov 2004 15:29:22 -0800
Message-Id: <6.0.0.22.2.20041130145852.026d8648@mail.llnl.gov>


I'm using 10g (10.1.0.3) on Linux and ASM and have run into bug 3458327 which is also explained in Note: 264235.1. The gist of the problem is that ASM requires CSS to handle communications, but the way Oracle has setup up the startups, CSS is never available soon enough to allow the ASM instance to start. I've created a work around and wanted to share it, and see if anyone else has come up with a better way to handle the problem.

Oracle suggests modifying the inittab file and then putting a "sleep" in dbora in the "hopes" that CSS will have initialized by the time dbora wakes up and tries to start the ASM instance. The problem is that I can't get the CSS to communicate with ASM unless I leave it where Oracle originally put it. Of course dbora then fails to properly start ASM and this must then be done manually after the boot. The following is Oracle's suggestion and my work around:

Oracle's suggestion:

1 - put the entry in 'inittab' file about the init.cssd script before running the runlevel 3

example of inittab:

(...)

s2:23:wait:/sbin/rc2 >/dev/msglog 2<>/dev/msglog
s3:3:wait:/sbin/rc3 >/dev/msglog 2<>/dev/msglog
s5:5:wait:/sbin/rc5 >/dev/msglog 2<>/dev/msglog

(...)

h1:3:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1

you need to change it in this way:

(...)

s2:23:wait:/sbin/rc2 >/dev/msglog 2<>/dev/msglog
h1:3:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1
s3:3:wait:/sbin/rc3 >/dev/msglog 2<>/dev/msglog
s5:5:wait:/sbin/rc5 >/dev/msglog 2<>/dev/msglog

(...)

2 - amend the dbora script file to include a 'sleep 120' giving time to the daemon to start before the other instances try and start.

My workaround (that works) is to background a script to start everything and allow the rest of the rc scripts to keep running and finish. This will then allow the init.cssd script to run as originally intended and the backgrounded script will presumably run after that. A more sophisticated approach would probably also check to make sure that ocssd.bin (CSS) was running before trying to start Oracle:

Leave inittab alone and change dbora:

   'start')

           echo "Starting up ORACLE..."
           #
           echo "sleep 120" > /tmp/dbstart
           echo "/bin/su - $ORA_OWNER  -c \"$ORACLE_HOME/bin/lsnrctl 
start\"" >> /tmp/dbstart
           echo "/bin/su - $ORA_OWNER  -c \"$ORACLE_HOME/bin/dbstart\"" >> 
/tmp/dbstart
           echo "touch /var/lock/subsys/dbora" >> /tmp/dbstart
           chmod 700 /tmp/dbstart
           nohup /tmp/dbstart > /dev/null 2>&1
           #
           echo "dbora is done."
         ;;

Any thoughts?

Andy Rivenes
Email: arivenes_at_llnl.gov

--
http://www.freelists.org/webpage/oracle-l
Received on Tue Nov 30 2004 - 17:26:33 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US