17,382
社区成员




--metalink上看到的,希望你能用上
Applies to:
Oracle Server - Enterprise Edition - Version 9.2.0.1 and later
Generic Windows
***Checked for relevance on 25-Apr-2012***
Symptoms
When the Oracle service is restarted, there is no information about a database shutdown.
However, there is an entry in the alert log for a subsequent database startup.
ORA_SID_AUTOSTART and ORA_SID_SHUTDOWN registry settings are set to TRUE.
Eg:
C:\> NET STOP "OracleServiceAPU01"
The OracleServiceAPU01 service is stopping....
The OracleServiceAPU01 service was stopped successfully.
C:\>time /t
10:33
Alert Log shows:
Wed Jun 20 10:28:30 2007
Database Characterset is WE8MSWIN1252
replication_dependency_tracking turned off (no async multimaster replication found)
Completed: alter database open
Dump file d:\oracle\admin\apu01\bdump\alert_apu01.log
Wed Jun 20 10:32:44 2007
ORACLE V9.2.0.6.0 - Production vsnsta=0
vsnsql=12 vsnxtr=3
Windows 2000 Version 5.2 Service Pack 1, CPU type 586
Wed Jun 20 10:32:44 2007
Starting ORACLE instance (normal)
.
.>>>>>>>>>>>>>> There is no information of shutdown but we see the re-start entry.
.
Wed Jun 20 10:32:53 2007
alter database open
Wed Jun 20 10:32:53 2007
Beginning crash recovery of 1 threads >>>>>>>>>>>>> we find crash recovery happening.
Wed Jun 20 10:32:53 2007
Started redo scan
Wed Jun 20 10:32:53 2007
Completed redo scanCause
Shutdown is not getting enough time to complete as the registry setting for ORA_SID_SHUTDOWN_TIMEOUT is not sufficient.
This parameter sets the maximum time to wait before the service for a particular SID stops. If this time is exceeded, the services gets terminated and hence we find a instance crash happening with no entries for a proper shutdown. Hence, a subsequent startup performs an instance crash recovery.
Solution
Increase the value for the registry parameter ORA_SID_SHUTDOWN_TIMEOUT.
Default value for the ORA_SID_SHUTDOWN_TIMEOUT parameter (for older Oracle versions) is 30.
The default value for Oracle 10.2 and 11.2 is 90.
Edit the value for the ORA_SID_SHUTDOWN_TIMEOUT parameter to a higher value and restart the server (OS) for the changes to take effect.
The above registry setting can be found in the location like HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0
For 10g and higher, the registry entries are found in entries like HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1