ORACLE打开和关闭数据--基础
ORACLE shutdown / startup
shutdown 命令
SHUTDOWN有四个参数:NORMAL、TRANSACTIONAL、IMMEDIATE、ABORT。缺省不带任何参数时表示是NORMAL。
SHUTDOWN NORMAL:
1.不允许新的连接、2.等待会话结束、3.等待事务结束、4.做一个检查点并关闭数据文件。启动时不需要实例恢复。
SHUTDOWN TRANSACTIONAL:
不允许新的连接、不等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
SHUTDOWN IMMEDIATE:
不允许新的连接、不等待会话结束、不等待事务结束、做一个检查点并关闭数据文件。没有结束的事务是自动rollback的。启动时不需要实例恢复。
SHUTDOWN ABORT:
不允许新的连接、不等待会话结束、不等待事务结束、不做检查点且没有关闭数据文件。启动时自动进行实例恢复。
启动过程
Oracle的启动过程共经历四个阶段:
shutdown→nomount→mount→open
shutdown→nomount过程:
读初始参数文件
分配物理内存
启动后台进程
定位到控制文件
打开/写alert文件
nomount过程可以访问的动态性能视图:v$parameter,v$sga,v$option,v$process,v$version,v$instance
nomount→mount过程:
打开控制文件
确认 database的结构信息
mount过程可以访问的动态性能视图: v$thread,v$controlfile,v$database,v$datafile,v$datafile_header,v$logfile
以下任务必须在mount状态下进行:
命名数据文件
启用和禁用重作日志归档选项
执行完全数据库恢复
mount→open过程:
打开数据文件
打开重做日志文件
最后阶段中,oracle服务器验证所有数据文件和重做日志文件是否可以打开,并检查数据库的一致性,如果需要,smon进程会启动例程恢复
启动过程:
NOMOUNT 实例启动阶段
数据库操作:
读取参数文件
根据参数设置分配空间
启动后台进程
打开报警文件,记录启动过程
用户操作:
创建数据库:创建文件
重建控制文件
MOUNT 数据库装载阶段
数据库操作:
读取控制文件:得到数据库信息
将数据库和实例关联在一起
用户操作:
操作数据库的归档和非归档模式
修改控制文件,重做数据文件的名称和路径
数据库的备份和恢复
改变归档模式
OPEN 打开数据库
数据库操作:
读取文件的SCN号,判断数据一致性,是否打开或回滚。
检查数据文件状态
用户操作:
查看数据
....
普通身份的用户是不能在 OPEN 之前登陆的。
SYSDBA是通过口令文件和操作系统验证,可以在OPEN之前登陆。
注意:在NOMOUNT启动模式下,只能访问那些与SGA区相关的数据字典视图,包括V$PARAMETER、V$SGA、V$OPTION、V$PROCESS、V$SESSION、V$VERSION、V$INSTANCE等,这些视图中的信息都是从SGA区中获得的,与数据库无关。在MOUNT启动模式下,只能访问那些与控制文件相关的数据字典视图,包括V$THREAD、V$CONTROLFILE、V$DATABASE、V$DATAFILE、V$LOGFILE等,这些视图中的信息都是从控制文件获得的。
STARTUP PFILE= filename:以filename为初始化文件启动数据库,不是采用缺省初始化文件。
STARTUP FORCE:中止当前数据库的运行,并开始重新正常的启动数据库。
STARTUP RESTRICT:只允许具有RESTRICTED SESSION权限的用户访问数据库。
STARTUP RECOVER:数据库启动,并开始介质恢复。