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

Home -> Community -> Usenet -> c.d.o.server -> Re: Starting 9iAS using services only

Re: Starting 9iAS using services only

From: <yong321_at_yahoo.com>
Date: 9 Dec 2004 07:02:49 -0800
Message-ID: <1102604569.786670.62420@z14g2000cwz.googlegroups.com>


Hi, Stefan,

This is a frequently asked question. The problem is that OID relies on iasdb and the midtier startup relies on OID. But iasdb could startup too late, due to e.g. earlier unclean shutdown. We need to delay OID startup. Metalink Note:158983.1 and Note:216269.1 suggest creating a separate service to achieve this goal. I think that's an overkill. Not many people are aware of the method Windows starts up services or runs programs in specified order on reboot (the way UNIX achieves this is well known). Try this to see if it works for you.

  1. Change OID service startup type from Automatic to Manual.
  2. Create a file start_oidsvc.bat, which contains
    ------ Begin cut ------
    rem Hope a minute is enough for iasdb to recover (if needed); sleep.exe can be ftp'ed from many web sites sleep 60 oidmon start oidctl server=oidldapd instance=1 start
    ------ End cut ------
  3. Create a shortcut start_oidsvc.lnk under C:\WINNT\system32\GroupPolicy\Machine\Scripts\Startup pointing to your start_oidsvc.bat.
  4. Add the shortcut to the Local Computer Policy startup script folder. I.e., type command mmc. Go to Console | Add/Remove Snap-in | Local Computer Policy. In the snap-in, go to Computer Configuration | Windows Settings | Scripts (Startup/Shutdown) | Startup. Click Show Files button to make sure the shortcut is shown. Click Add to add the shortcut to the Scripts window (selecting the shortcut changes the filename display to the real target file start_oidsvc.bat).

Unfortunately we're not taking advantage of Windows's capability of running scripts in order, because once iasdb service is started, it's hard to determine when it's fully ready. But feel free to write a script to login and select from dual to make sure it's ready, if you don't want to rely on sleep 60 in your start_oidsvc.bat.

To test, create a big transaction in iasdb. Kill the database process in task manager (or shutdown abort from another session). Reboot and check for "Beginning crash recovery of 1 threads" in alert.log. And make sure these processes
oidservice.exe (3040)
**oidldapd.exe (2896)
****oidldapd.exe (892)
are seen in indented format (my tlist -t output; I added * because Google groups-beta removes leading spaces).

Yong Huang Received on Thu Dec 09 2004 - 09:02:49 CST

Original text of this message

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