【原】Oracle 数据库实例启动过程

Oracle数据库实例的启动,严格来说应该是实例的启动,数据库仅仅是在实例启动后进行装载。Oracle数据启动的过程被划分为,几个不同的步骤,在不同的启动过程中,我们可以对其实现不同的操作,系统修复等等工作,因此了解Oracle数据启动、关闭是非常有必要的。下面详细了Oracle Database数据库启动及关闭的过程。

数据库实例的启动

启动过程:nomount ---> mount ---> open【startup不带参数将逐步一一完成】

1.nomount阶段(即实例的启动,为什么会先打开实例?因为实例是管理数据库的手段,所以先打开实例)

实例的启动通常包含下列任务:

a.按以下顺序在$ORACLE_HOME/dbs[win平台为database]目录下搜索下列文件,即如果第一个没找到,就找下一个spfile<SID>.ora ---> spfile.ora ---> init<SID>.ora

b.分配SGA

c.启动后台进程

d.打开并修改告警<SID>.log文件及跟踪文件

使用场景:多用于数据库创建、控制文件重建、特定的备份恢复等

注意:此阶段不打开任何的控制文件及数据文件。       

2.mount阶段

mount阶段完成的任务:

a.该阶段控制文件被打开,将数据库与实例关联起来(通过实例控制数据库得以体现)

b.利用参数文件中的说明,打开并锁定控制文件

c.读取控制文件以获取数据文件和重做日志文件的名字和状态信息,但不检查数据日志文件是否存在

使用场景:

a.重命名数据文件,移动数据文件位置等(数据库打开,表空间脱机的情况下也可以重命名数据文件)

b.启用或关闭重做日志文件的归档及非归档模式

c.实现数据库的完全恢复

注意:这一步会读控制文件,如果这一步有一个控制文件损坏就无法启动

3.open阶段

mount阶段完成的任务:

a.打开数据文件

b.打开联机日志文件

posted @ 2012-06-10 21:32  david_zhang@sh  阅读(562)  评论(0编辑  收藏  举报