当前位置导航:炫浪网>>网络学院>>编程开发>>Oracle教程

打开和关闭数据库的过程


  1、 打开数据库
  Ø 启动例程
  读取参数文件initsid.ora
  分配SGA
  启动后台进程
  打开ALERT 文件及跟踪文件
  Ø 装载数据库
  例如在以下任务中必须装载数据库但不要打开数据库
  命名数据文件
  启用和禁用重做日志归档选项
  执行完全数据库恢复
  装载数据库包括以下任务
  使数据库与以前启动的例程关联
  定位并打开参数文件中指定的控制文件
  读取控制文件以获取数据文件和重做日志文件的名称和状态,但是在此时不进行数据文件和联机重做日志文件是否存在的检查
  
  Ø 打开数据库
  打开联机数据文件
  打开联机重做日志文件
  Ø 在此最后阶段中,Oracle 服务器验证所有数据文件和联机重做日志文件是否可以打开,并检查数据库的一致性。如果需要,系统监视器后台进程(SMON) 启动例程恢复
  前滚以恢复尚未记录在数据文件中但已记录在联机重做日志中的数据
  打开数据库而不是等待回退全部事务后才使数据库可用未被未恢复事务锁定的数据立即可用
  在SMON 和各个服务器进程访问锁定的数据时回退它们未提交的事务
  Ø 命令:Startup
  STARTUP [FORCE] [RESTRICT] [PFILE=filename]
  [OPEN [RECOVER][database]|MOUNT|NOMOUNT]
  注这不是完整的语法
  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 ,可以关闭数据库
相关内容
赞助商链接