20151112 oracle数据库德启动

启动数据库的前提条件

a.环境变量定义好 $ORACLE_HOME,SID等

b.能够进行密码认证或者操作系统认证

c.有正确的参数文件(至少要有参数才能见数据库启动到nomount状态)

d.有足够的内存

e.参数文件中路径要存在,且有操作权限(写日志写目录的权限)

f.产品安装正确

启动数据库分三个阶段

1.启动实例 nomount阶段 -->本阶段用的文件是参数文件,instance启动完毕,处于nomount阶段

读取参数文件并判断定义是否有错误

【注意参数文件的查找原则:spfiled.ora spfile.ora initsid.ora】

根据参数文件定义分配相关内存

打开alter文件,跟踪文件并记录信息

启动相关的后台进程

通过相关的进程判断oracle是否启动 ps -ef|grep ora_

startup nomount 

sqlplus下查看进程 ! ps -ef|grep ora_

查看当前使用的参数文件 show parameter spfile

有结果说明是spfile启动 否则为pfile启动

或者 

select name,value from v$parameter where name='spfile'

Linux下pfile,spfile的文件路径 cd $ORACLE_HOME/dbs

初始化参数文件(Initialization Parameters Files),Oracle 9i之前,ORACLE一直采用PFILE方式存储初始化参数,该文件为文本文件。 
服务器参数文件(Server Parameter Files),从Oracle 9i开始,Oracle引入了SPFILE文件,该文件为二进制格式,不能通过手工修改。

spfile的修改是可以通过sql命令在线修改,不在需要手工修改,对于动态参数所有更改可以立即生效,而pfile得修改必须重启实例才能生效

spfile丢失的情况下用pfile启动

startup pfile='....ora' nomount

通过pfile重建spfile文件

create spfile from pfile='/oracle/app/oracle/product/11.2/db_1/dbs/initdevdb.ora';

在此阶段可以进行对参数文件的修改和管理

2.装载数据库 此时读取控制文件 装载物理文件 Mount状态 -->本阶段用的是控制文件,在mount阶段,可以对数据库的物理结构进行操作

alter database mount

此时数据库读取控制文件

show parameter control_file 

使数据库与以前启动的实例关联

定位并打开参数文件中指定的控制文件

读取控制文件获取数据文件和重做日志文件的名称和状态

此时可以进行对数据文件日志文件等的修改

alterbase 指令 如

命名数据文件

启用和禁用重做日志归档选项

执行完全数据库回复

create database指令

drop database指令

但不能对表空间进行操作 ,因为其实逻辑结构

更不能对表操作

3.打开数据库 -->本阶段使用数据文件,日志文件,物理文件的逻辑关系,验证一致性

打开联机数据文件

打开联机重做日志文件

验证所有数据文件和联机重做日志文件是否可以打开,并检查数据库的一致性

如果需要,smon启动实例恢复

前滚以恢复尚未记录在数据文件中但已记录在redo中的日志

s护具库处于open阶段,数据库启动完毕,逻辑结构和物理结构k而已正常工作


你可能感兴趣的:(20151112 oracle数据库德启动)