1、 打开数据库
Ø 启动例程
读取参数文件initsid.ora
分配SGA
启动后台进程
打开ALERT 文件及跟踪文件
Ø 装载数据库
例如在以下任务中必须装载数据库但不要打开数据库
命名数据文件
启用和禁用重做日志归档选项
执行完全数据库恢复
装载数据库包括以下任务
使数据库与以前启动的例程关联
定位并打开参数文件中指定的控制文件
读取控制文件以获取数据文件和重做日志文件的名称和状态,但是在此时不进行数据文件和联机重做日志文件是否存在的检查
Ø 打开数据库
打开联机数据文件
打开联机重做日志文件
Ø 在此最后阶段中,Oracle 服务器验证所有数据文件和联机重做日志文件是否可以打开,并检查数据库的一致性。假如需要,系统监视器后台进程(SMON) 启动例程恢复
前滚以恢复尚未记录在数据文件中但已记录在联机重做日志中的数据
打开数据库而不是等待回退全部事务后才使数据库可用未被未恢复事务锁定的数据立即可用
在SMON 和各个服务器进程访问锁定的数据时回退它们未提交的事务
Ø 命令:Startup
STARTUP [FORCE] [RESTRICT] [PFILE=filename]
[OPEN [RECOVER][database]MOUNTNOMOUNT]
注这不是完整的语法
OPEN :使用户得以访问数据库
MOUNT:为某些DBA 活动装载数据库但不答应用户访问数据库
NOMOUNT: 创建SGA 并启动后台进程但不答应访问数据库
PFILE=parfile: 答应使用非缺省参数文件配置例程
FORCE: 在执行正常启动之前终止运行的例程
RESTRICT: 只答应具有RESTRICTED SESSION 权限的用户访问数据库
RECOVER: 在启动数据库时开始介质恢复
2、 关闭数据库
Ø 关闭数据库
Oracle 服务器将缓冲区高速缓存中的更改及重做日志缓冲区高速缓存中的条目写入数据文件和联机重做日志文件
Oracle 服务器关闭所有联机数据文件和联机重做日志文件
Ø 卸装数据库
Oracle 服务器关闭其控制文件
Ø 关闭例程
ALERT 文件和跟踪文件将关闭,SGA 被回收并且后台进程被终止
Ø 命令:shutdown
SHUTDOWN [NORMAL TRANSACTIONAL IMMEDIATE ABORT ]
关闭模式 A I T N
答应新连接 x x x x
等到当前会话结束 x x x 0
等到当前事务结束 x x 0 0
执行检查点并关闭文件 x 0 0 0
normal(缺省方式):
不答应新的连接
Oracle 服务器等待所有用户断开后才完成关闭
Oracle 在关闭例程前将关闭并卸装数据库
下一次启动时将不要求例程恢复
TRANSACTIONAL---防止客户丢失工作
没有客户可以在此特定例程上启动新事务
当客户结束正在进行的事务时断开客户
当所有事务都已完成时会立即关闭
下一次启动将不要求例程恢复
IMMEDIATE
由Oracle 处理的当前SQL 语句未完成
Oracle 服务器不等待当前连接数据库的用户断开
Oracle 回退活动的事务并断开所有连接的用户
Oracle 在关闭例程前将关闭并卸装数据库
下一次启动将不要求例程恢复
ABORT
Oracle 服务器所处理的当前SQL 语句被立即终止
Oracle 不等待当前连接数据库的用户断开
未提交的事务不回退
在不关闭文件的情况下例程被终止
下一次启动将要求例程恢复
Ø NT上通过注册表关数据库
停止OracleServiceSID 服务也终止OracleStartSID 并执行orashut.bat 脚本 or
通过停止OracleServiceSID 服务并将注册表中的ORA_SID_SHUTDOWN 参数设置为True ,可以关闭数据库