【Oracle数据恢复】ORACLE数据库启动startup 停止shutdown相关文档汇总

【Oracle数据恢复】ORACLE数据库启动startup 停止shutdown相关文档汇总


在ORACLE数据库启动过程中,首先启动的是实例instance即nomount阶段, 之后再通过CONTROL_FILES 参数指定的控制文件位置来加载数据库MOUNT阶段。 下一个步骤是打开数据库open ,这个步骤包含打开数据文件和redo logfile重做日志文件。接着如果之前的一次shutdown不是优雅关闭的话, 则需要完成前滚(实际就是apply redo)和回滚未提交的事务(rollback)。

数据库的停止和启动一样也分成几个阶段。 首先数据库被关闭 close这让数据库不在发生变化,即数据文件和redo logfile日志文件均被关闭。接着数据库进入dismount阶段,实例将与数据库脱离联系。当数据库被unmount之后,ORACLE数据库关闭其控制文件。下一步是 移除SGA和中止后台进程 这样实例就算关闭了。

有多种shudown 的模式例如normal,immediate,transaction ,和abort. 除去SHUTDOWN ABORT外,数据库都会将SGA中必要的数据写出到磁盘上的数据文件和redo logfile中。 如果SHUTDOWN ABORT或者发生异常中止,则SGA中必要的数据仍未写出,需要在下次数据库启动时 完成crash recovery,这些都是ORACLE数据库自动完成的。

Startup upgrade/migrate 或者 设置  _system_trig_enabled = FALSE 都将在启动过程中禁止触发器



Startup Slow / Hang

Startup can hang in any of the stages like nomount,mount or open stage. Following are some of the known issues reported so far:

Note 1367724.1 Startup Hangs at Mount Stage after AIO is Enabled on Linux
Note 429390.1 Database Startup Takes Longer time After Upgrade To 10.x
Note 552019.1 New Install and Creation of a 10gR2 database Hangs at Startup Nomount
Note 344933.1 DB Startup Can Hang if USE_INDIRECT_DATA_BUFFERS=TRUE and AWE_WINDOW_MEMORY Is Set Too High
Note 838451.1 Startup Hangs When "Processes" Parameter is Higher Than 10800
Note 1076092.1 Instance Startup Hangs After Creating New Undo Tablespace and Switching Between Old and New
Note 1476526.1 Database STARTUP NOMOUNT very slow after migrate to T4-4 Servers SPARC 64-Bit
Note 1475621.1 Oracle Database Startup And SGA Value Change Takes A Very Long Time To Complete

ORA-27102 Errors

ORA-27102 errors normally occurs due to memory issues.The Common causes could due to Semaphore Kernel misconfigurations,Memory related Ulimit settings,RAM and swap configurations.

Note 274092.1 LOCK_SGA on Windows fails with ORA-27102
Note 219752.1 ORA-27102 OSD-00034 Starting Database on Windows 2000
Note 390547.1 ORA-27102 Cannot Startup Instance via sqlplus
Note 1060677.6 ORA-27100 ORA-27102 Trying to Start 8.0.4 Database
Note 399895.1 Database Startup On Solaris 10 Fails With Ora-27102 Out Of Memory Error
Note 467707.1 ORA-27102: Out Of Memory on Oracle 10g Solaris 10 (x86-64)
Note 7272646.8 Bug 7272646 - Linux-x86_64: ORA-27103 on startup when MEMORY_TARGET > 3g
Note 263537.1 ORA-27102 out of memory When Trying To Start Database With SGA> 4G
Note 842881.1 ORA-27102, OSD-00031 Unable To Extend Memory_max_target And Memory_target Past 2GB
Note 1449714.1 Startup Fails With ORA-27102 After Upgrade From To
Note 461519.1 ORA-27102 Database Will Not Start With SHMMAX Set To 8589934592 (8GB)
Note 351930.1 Receiving ORA-27102 For 32-Bit Oracle While Allocating Sga_max_size Greater Than 4gb
Note 1351705.1 Startup Fails with ORA-27102 and 'SVR4 Error 28: No space left on device'
Note 1292225.1 ORA-27102 OSD-00025 O/S-Error: (OS 1453) When Lock_sga is Set to True
Note 401077.1 Ora-27102: Out Of Memory: Linux Error: 12: Cannot Allocate Memory with LOCK_SGA=TRUE
Note 577898.1 ORA-27102 Received At Startup When LOCK_SGA Is Set Although Enough Memory Is Available
Note 301830.1 Upon startup of Linux database get ORA-27102: out of memory Linux-X86_64 Error: 28: No space left on device
Note 859898.1 The ORA-27102 error is generated on Solaris 10 having apparently correct settings of kernel parameters
Note 779861.1 ORA-27102: Out Of Memory And SVR4 Error: 22: Invalid argument During Startup On Solaris10 Server With Multiple DB Instances

ORA-27300 Errors

These errors are generally reported when the Operating System called for error or when there was a connection killed or a network interconnection failures or an OS configuration issue.The error ORA-27300 will also be accompanied by ora-27301 and ora-27302

Note 560309.1 Database Cannot Start Due to Lack of Memory
Note 579365.1 Troubleshooting ORA-27300 ORA-27301 ORA-27302 errors
Note 314179.1 Instance Startup Fails With Error ORA-27154,ORA-27300,ORA-27301,ORA-27302
Note 812115.1 Startup Fails With ORA-27300: Os System Dependent Operation:Fork Failed With Status:17
Note 814896.1 Startup Fails With ORA-27300: OS system dependent operation:IPC init failed with status: 65
Note 949468.1 Database Startup Fails with ORA-27300: OS system dependent operation:semget failed with status: 28

ORA-64 Errors

This error could occur when the database init.ora parameter calling for more resources than the Operating System is configured to provide.The parameters could be PROCESSES,DB_BLOCK_SIZE,SGA and more.

Note 470742.1 ORA-00064 Starting Database With Dispatchers
Note 556258.1 ORA-64 if Db_keep_cache_size is Set to 70 Gigs
Note 283980.1 ORA-00064: object is too large to allocate on this O/S
Note 1232463.1 ORA-00064: Object Is Too Large To Allocate On This O/S
Note 4466378.8 Bug 4466378 - ORA-64 does not report the caller description
Note 179301.1 Instance Startup Fails With ORA-00064 After Increasing Processes
Note 1457812.1 ORA-00064 Error Reported After Increasing Processes Parameter value
Note 18255.1 OERR: ORA 64 object is too large to allocate on this O/S <num, num>
Note 310838.1 Instance Startup failed with ORA-00064 when processes parameter set to High Value
Note 886312.1 Database startup can fail with ORA-00064 Errors with huge sga_target of over 40Gig
Note 1328620.1 ASM Instance Is Not Coming Up ORA-00064 (1,4468736,Kfchl Array) Kfchl Array
Note 815954.1 ORA-64 when starting ASM instance after changing db_cache_size and shared_pool_size
Note 7659217.8 Bug 7659217 - ORA-64 attempting to startup with a large SGA / buffer cache size
Note 386855.1 'startup migrate' failed with ORA-64 while upgrading to with DBUA

ORA-27123 Errors

Note 167250.1 ORA-27123 When Connecting As Non Oracle User 
Note 207743.1 Getting ORA-27123 when trying to startup Oracle
Note 115753.1 UNIX: Resolving the ORA-27123 error
Note 307323.1 Ora-27123 When Creating New Database
Note 167250.1 ORA-27123 When Connecting As Non Oracle User 
Note 207743.1 Getting ORA-27123 when trying to startup Oracle
Note 61912.1 OERR: ORA-27123 unable to attach to shared memory segment
Note 250966.1 ORA-27123 During Startup, Immediately after a Shutdown
Note 872532.1 ORA-27123 on RHEL5 (PAE) 32bit when SGA larger than 2Gb
Note 552633.1 Starting the Database with SGA_TARGET set Fails with ORA-27123
Note 437582.1 Export Fails With EXP-00056 ORA-01034 ORA-27123 EXP-00005
Note 733974.1 ORA-27123 During Startup Nomount in 11G on AIX, Failure in SHMAT()
Note 369262.1 Startup with Maximum SGA Fails With Ora-27123 Unable To Attach Sga
Note 735187.1 Cannot Create Database With DBCA - Startup Nomount Gives ORA-27123
Note 1268668.1 Oracle Database 10g R2 Version - Receiving Ora-27123 Errors
Note 390766.1 ora-27123 on Solaris 10 with larger than 1.6 - 1.7Gb SGA
Note 384262.1 ORA-01034, ORA-27123, HP-UX Error 22 Connecting Via Oracle Net
Note 149070.1 VMS: Connections fail with ORA-1034 and ORA-27123 errors
Note 453930.1 Connecting to the database fails with ORA-12547, Ora-600 [Ksmlsge1], ORA-27123, Error 13
Note 207797.1 ORA-1034 ORA-27123 SVR4 Error: 13: Permission denied when other then Oracle user
Note 356957.1 OpenVMS: Client Connections Report ORA-1034, ORA-27123, %SYSTEM-W-REGISFULL
Note 1401726.1 ORA-27123 When Starting Instance With No Setting Of SGA_TARGET Or SGA_MAX_SIZE
Note 730107.1 Getting ORA-27123 & not able to run Oracle when logging to server by a user other than that installed Oracle although it belongs to the same group

ORA-1081 Errors

This error could occur when we try to startup an instance that is already running or if the shared segments/semaphores already exist.

Note 1010214.6 ORA-1081: Starting Instance
Note 18657.1 OERR: ORA 1081 cannot start already-running Oracle - shut it down first
NFS Related Issues

Note 8418190.8 Bug 8418190 - Direct NFS warnings during database startup
Note 236794.1 NFS Locking Problems Encountered During Database Startup
Note 1430654.1 Database Startup Failed with "Direct NFS: please check that oradism is setuid"
Note 430920.1 NetApp: Using 'nolock' NFS Mount Option with non-RAC Systems Results in Database Corruption
ORA-600 /ORA-7445 Errors 

Note 435436.1 ORA-00600: [kccpb_sanity_check_2] During Instance Startup
Note 101589.1 Startup database returns ORA-00600 [ktpridestroy2]
Note 405602.1 ORA-600 [16305] While Starting Up the Database
Note 466596.1 Core Dumps In skgfqio() - Database Startup Hangs/Spins
Note 336447.1 Startup Database Produces ORA-00600: [Keltnfy-Ldminit]
Note 847786.1 Can Not Open Database After Shutdown get ORA-7445 [kewa_dump_time_diff]
Note 779071.1 Unable to Start Instance Due to ORA-600 [skgmhash] after a clean shutdown
Note 549000.1 ORA-600 [6006] ORA-600 [6856] During Startup Instance, Followed by Termination by SMON
Note 453775.1 Database Startup Fails With ORA-7445 [INVALID PERMISSIONS FOR MAPPED OBJECT] After Creation of User LBACSYS

Transaction Recovery Slowness

There could be slowness in the database during the open phase when the database is busy performing transaction recovery.

Note 1494886.1 Database Transaction Recovery
Note 414242.1 Database Hangs Because SMON Is Taking 100% CPU Doing Transaction Recovery
Note 12934890.8 Bug 12934890 - Startup hangs waiting for row cache lock due to open transaction against UNDO$
ORA-704 Errors

This is a general error reported at startup when there is some problem during processing of bootstrap information.There should be an accompanying error/s.

Note 18494.1 OERR: ORA 704 "bootstrap process failure"
Note 560417.1 Recovery Through Upgrade returns ORA-1092 on Open
Note 1349722.1 Ora-00704,Ora-39700: Database Must Be Opened With Upgrade Option
Note 435337.1 Unable To Open Database Before/After Upgrade - ORA-00704 ORA-39700 ORA-01092
Note 1383179.1 Unavailable Bootstrap Object ACCESS$ Causes ORA-704 ORA-604 ORA-942 When Opening Database
Note 1345417.1 After failed upgrade, startup from a restored backup fails on ORA-00704 and ORA-39700
ORA-9968 Errors

There are some client shadow processes hanging. Although the lk< SID> file is deleted the hanging processes still have a lock on the open file handle. This prevents the database to startup although a new lk file can be created successfully. An oracle process (background or shadow process) that exists while the instance is not started (crashed or not cleanly stopped) can have a lock on a file while this file is actually removed from the system. This is because on UNIX there is still a lock on the open file handle.

Note 467251.1 ORA-09968, ORA-01102 When Starting a Database 
Note 160395.1 Database Startup Fails with ORA-1102 and ORA-9968
Note 1488147.1 Instance Startup Raises Error ORA-09968: unable to lock file (Doc ID 1488147.1)
ORA-12547 Errors

The error ORA-12547 indicates that the communication channel has been broken. It's most often thrown because the other end of the process went away unexpectedly.

Note 1307075.1 Oracle Database Fails to Start with Error ORA-12547
Note 381566.1 connect / as sysdba Fails with Ora-12547 And Tns-12514
Note 744512.1 Ora-12547: Tns:Lost Contact Creating Database After Clean Installation
ORA-27125 Errors

Note 199068.1 OpenVMS: Instance startup fails with ORA-27125 and %SYSTEM-F-VA_IN_USE 
Note 121983.1 Starting Database Fails on Solaris with ORA-27126 or ORA-27125 Using LOCK_SGA
Note 577428.1 OpenVMS: Following an Oracle RELINK, Database Instance Startup fails with ORA-27125 or ORA-7217
ORA-1157 Errors 

The background process was not able to find one of the datafiles.The database will prohibit access to this file but other files will be unaffected.However, the first instance to open the database will need to access all online datafiles.Accompanying messages from the operating system will describe why the file was not found.

Note 184327.1 ORA-1157 Troubleshooting
Note 1035992.1 Oracle Troubleshooting
Note 212053.1 ORA-1157/ORA-1110 Trying To Open The Database
Note 145194.1 ORA-1157 ORA-1110 ORA-27086 Starting up Database
Note 444151.1 ORA-01157 on Database Startup After Dropping an Alias
Note 301635.1 ORA-01157, ORA-01110, ORA-27046 Starting A Restored Database
Note 429912.1 ORA-01157 ORA-01110 ORA-27086 after crash prevents database from opening
Note 256835.1 Database Startup Fails With ORA-1110, ORA-1157, ORA-27092 Trying Startup From 'at' or 'cron' on HP-UX
Other Issues

Note 1113864.1 MBIND: Cannot Allocate Memory On Startup
Note 6795133.8 Bug 6795133 - Startup delayed by QMNC queries
Note 301072.1 Dbstart Fails With Ora-01031 When Called From User Root
Note 1286665.1 ORA-00371: Not Enough Shared Pool Memory signalled on Startup
Note 779356.1 Database not starting up with errors ORA-01092 ORA-24324 ORA-01041
Note 1176443.1 ORA-4031 During Startup Nomount using RMAN without parameter file (PFILE)
Note 839789.1 ORA-12853 / ORA-4031 or ORA-4030 on Instance Startup With increased SGA size
Common Errors / Issues During Database Shutdown

The most common issue observed while bringing down the database is shutdown immediate hang. The main reasons for Shutdown immediate hang is:
- processes still continue to be connected to the database and do not terminate.
- SMON is cleaning temp segments or performing delayed block cleanouts.
- Uncommitted transactions are being rolled back.

The below section provides the consolidated list of known issues during shutdown. The documents mentioned in the below section can be specific to platform or database versions.

Shutdown Slow / Hang

Note 1197314.1 Shutdown Normal Hung On ORA_J00# Process
Note 309230.1 Database Doesn't Shutdown Immediate During Server Boot
Note 1039389.6 Alert Log: Shutdown Waiting for Active Calls to Complete
Note 305666.1 Shutdown is Cancelled With ORA-1013 After Waiting for an Hour
Note 1194229.1 Database shutdown immediate Hangs: Startup can also hang
Note 1183213.1 Shutdown Normal or Immediate Hang Waiting for MMON process
Note 428688.1 Bug 5057695: Shutdown Immediate Very Slow To Close Database
Note 416658.1 Shutdown Immediate Hangs / Active Processes Prevent Shutdown
Note 437876.1 Database Does Not Shutdown Cleanly When Oracle Service Is Restarted
Note 304414.1 Shutdown hangs in 9i with: SHUTDOWN: waiting for logins to complete
Note 332177.1 Database Shutdown Immediate Takes Forever, Can Only Do Shutdown Abort
Note 13440516.8 Bug 13440516 - Index skip scan cannot be interrupted - can block shutdown
Note 12879056.8 Bug 12879056 - Index skip scan cannot be interrupted - can block shutdown
ORA-1031 Errors

Note 309059.1 Oradim Command Fails to Shutdown Database(s) with ORA-01031 under 
Note 846679.1 Ora-1031 Error Stopping Database Or Permission Denied Error Running Lsnrctl
Transaction Recovery

Note 375935.1 What To Do and Not To Do When 'shutdown immediate' Hangs
Note 1076161.6 Shutdown Normal or Shutdown Immediate Hangs. SMON disabling TX Recovery
Note 414242.1 Database Hangs Because SMON Is Taking 100% CPU Doing Transaction Recovery
Note 100054.1 Transaction Rollback after a failed operation or during Database Shutdown
ORA-600 / ORA-7445 Errors

Note 604067.1 Ora-600[3708] On Database Shutdown
Note 455181.1 ORA-00600[17302] During Shutdown Immediate
Note 470362.1 ORA-07445 With kpogup At Database Shutdown
Note 1135453.1 Database Hung On Shutdown After ORA-600 [KGHFRE3] Error
Note 359563.1 ORA-00600: Internal Error Code, Arguments: [17302], [2] During Shutdown
Note 435926.1 Shutdown Database Erroring ORA-600 [Librarycachenotemptyonclose], []
Note 8519322.8 Bug 8519322 - ORA-600 [17148] / ORA-600 [730] on database shutdown
Note 1326908.1 Ora-00600: [3708], ORA-600 [2103] When Database shutdown on IBM:Linux on System Z
ORA-24324 Errors

Note 794293.1 ORA-24324 During Shutdown 
Note 1168554.1 Ora-24324 And Ora-1041 Errors Trying To Startup Or Shutdown The Database

Note 1001248.1 On Solaris 9 Systems, Oracle Shutdown May Hang If Utilizing Dynamic Initmate Shared Memory (DISM) 

Memory Related Errors

Note 1319253.1 "ERROR: SGA memory leak detected" message in alert.log on database shutdown

Other Issues

Note 1017085.102 ORA-01122, ORA-01210, ORA-01110: On Database Shutdown
Note 429603.1 ORA-29702 During Automatic Shutdown of Database using ASM
Note 784754.1 11g - Receiving Ora-27167 Error On Database Startup or Shutdown 
Note 419651.1 Event 10621 and Event 10626/10629 Causes Shutdown Immediate to Hang
Note 118228.1 ALERT: Hang During Startup/Shutdown on Unix When System Uptime > 248 Days 
Note 343031.1 How to deal with an ORA-01033 'Oracle startup or shutdown in progress' error
Note 18302.1 OERR: ORA 106 cannot startup/shutdown database when connected to a dispatcher
Note 763932.1 Shutdown Error In EM: Execution Failed Due To Binary Missing Or Permission Issues
Note 10194190.8 Bug 10194190 - Solaris: Process spin / ASM and DB crash if RAC instance up for > 248 days
Note 1001248.1 On Solaris 9 Systems, Oracle Shutdown May Hang If Utilizing Dynamic Initmate Shared Memory (DISM)
Note 760968.1 Database Startup, Shutdown Or New Connections Hang With Truss Showing OS Failing Semtimedop Call With Err#11 EAGAIN

Issues specific to automatic shutdown and startup

This is specific to the automatic shutdown and startup that can be configured with the dbora / dbshut / dbstart scripts.

Automatic Startup Failure

The key to diagnosing automatic startup failures is to determine where startup fails. This can be done via the following steps:

Determine if instance starts manually as Oracle software owner.
Determine if instance starts via dbstart command run as Oracle software owner.
Determine if instance starts when root runs following dbstart command:
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart

where $ORA_OWNER is set to Oracle software owner.
Determine if instance starts when running as root the OS script which calls dbstart, ie "/etc/init.d/dbora start". NOTE: Running via sh -x command will show each command as it is run from script to better see what is going on.
#> sh -x /etc/init.d/dbora start
Automatic Shutdown Failure

As with automatic startup, the key to diagnosing automatic shutdown failures is to determine where shutdown fails. This can be done via following steps:

Determine if instance stops manually as Oracle software owner.
Determine if instance stops via dbshut command run as Oracle software owner.
Determine if instance stops when root runs command
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
where $ORA_OWNER is set to Oracle software owner.
Determine if instance stops when running as root the OS script which calls dbshut, ie "/etc/init.d/dbora stop". NOTE: Running via sh -x command will show each command as it is run from script to better see what is going on.
#> sh -x /etc/init.d/dbora stop




沪公网安备 31010802001379号