8

We have an Oracle 10g Enterprise Edition installation (10.2.0.1.0) on a Windows Server 2003 virtual machine. It was initially created with Virtual Server 2005 R2 SP1 but has now been migrated to Windows Server 2008 Hyper-V.

The services start on system boot, but the instance does not start up. This problem was actually occurring on Virtual Server after a migration from one server to another, but I managed to fix it then with:

oradim -edit -sid ORCL -startmode auto

However, this now has no effect.

oradim.log (in %OracleHome%\database\oradim.log) says:

Thu Jun 10 14:14:48 2010
C:\oracle\product\10.2.0\db_3\bin\oradim.exe -startup -sid orcl -usrpwd * -log oradim.log -nocheck 0
Thu Jun 10 14:14:48 2010
ORA-12560: TNS:protocol adapter error

sqlnet.log in the same folder has:

Fatal NI connect error 12560, connecting to:
 (DESCRIPTION=(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=oracle)(ARGV0=oracleorcl)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))(CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_3\bin\oradim.exe)(HOST=ORACLE-VM)(USER=SYSTEM))))

  VERSION INFORMATION:
        TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
        Oracle Bequeath NT Protocol Adapter for 32-bit Windows: Version 10.2.0.1.0 - Production
  Time: 10-JUN-2010 14:14:48
  Tracing not turned on.
  Tns error struct:
    ns main err code: 12560
    TNS-12560: TNS:protocol adapter error
    ns secondary err code: 0
    nt main err code: 530
    TNS-00530: Protocol adapter error
    nt secondary err code: 2
    nt OS err code: 0

The ORA_ORCL_AUTOSTART registry value is set to TRUE, so it should be auto-starting - and you can see that it's trying to. The problem also occurs when stopping and restarting the OracleServiceORCL service.

I've enabled SQL*Net tracing which shows:

[10-JUN-2010 15:09:33.919] snlpcss: entry
[10-JUN-2010 15:09:34.419] snlpcss: Unable to spawn Oracle oracle     (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq))) orcl, error 2.
[10-JUN-2010 15:09:34.419] snlpcall: exit

On a hunch that error 2 is Windows error 2 (file not found) I tried restarting the service with Process Monitor watching oradim.exe, but this appears to delay things just enough that it always works.

Right now I have a horrible hack where I've created a Scheduled Task to run oradim -startup -sid ORCL when the Administrator account logs on, and set the VM to auto-logon. I'd still like to work out why it's not working.

5
  • So, to be clear: it's the autostart that fails, but you can bring up the instance manually? Or not?
    – DCookie
    Jun 10, 2010 at 14:46
  • @DCookie: autostart fails but bringing up the instance with oradim or by running 'startup' from sqlplus works. It's only auto-starting that's a problem. Jun 11, 2010 at 13:43
  • Any particular reason you're not running 10.2.0.4?
    – DCookie
    Jun 11, 2010 at 16:09
  • You should really look at the alert log to determine why it's not starting. It's usually in C:\Oracle\product\10.2.0\admin\bdump\alert.log (location can vary). The sqlnet log and tracing are red herrings - the database starts independently of the network stack.
    – namd0gma1
    Dec 27, 2010 at 18:02
  • 1
    If the Windows machinename/servername changed check if listener.ora contains a reference to the old name and update it. Usually listed in a (HOST=XXXX) part of a listener configuration.
    – Brian
    Dec 9, 2014 at 10:52

2 Answers 2

0

It might be worth, for a test, adding a dependency to the service. I'm wondering whether it's trying to start too early. I've seen a similar problem in the past, and cannot remember what we did to fix it, but we now use the Oracle agent / Grid Control to bring the services up (i.e.: Agent => Auto start, Oracle => Manual, Etc).

0

run tnsping .
go to directory with parameters file sqlnet.ora
edit files tnsnames.ora & listener.ora
correct (HOST = your_db_host_name) to value returned by hostname command
run services.msc
restart oracle listener service named OracleOra....Listener & instance service named OracleService....

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .