Oracle 启动例程 STARTUP参数说明


  本文标签:Oracle,STARTUP

1.不装入数据库而启动事例
可以不装入数据库而启动事例,一般是在数据库才创建时才可以这样做:
STARTUP NOMOUNT

2.启动事例并装入数据库
用户可以启动事例而并装入数据库但不打开数据库,允许用户执行特定的维护操作 。例如:
l 重命名数据文件;
l 添加、撤消或重命名重做日志文件;
l 启动和禁止重做日志归档;
l 执行全部的数据库恢复 。
STARTUP MOUNT

3.启动事例装入并打开数据库
正常情况是一个事例被启动,数据库装入并打开 。这种模式允许任何有效用户连接到数据库并执行典型
的数据库访问操作 。
STARTUP

4.限制在启动时对数据库的访问
用户可以在严格的模式下启动事例并装入数据库,这样的模式只允许DBA做以下的工作:
l 执行结构维护,如重建索引;
l 执行数据库文件的导入导出;
l 执行数据装载;
l 临时阻止典型用户使用数据
STARTUP RESTRICT

5.强制事例启动
可以用下面命令来强行启动事例,如果一个事例正在启动,则STARTUP FORCE 重新启动 。
STARTUP FORCE;

6.启动一个事例,装入数据库,并启动全部的介质恢复
如果用户要求介质恢复,可以启动一个事例,装入指向事例的数据库,并自动地启动恢复程序 。
STARTUP OPEN RECOVER;

7.启动独占或并行模式
如果用户的ORACLE服务器允许多个事例来并发的访问一个数据库(Oracle 并行服务器选项),应选择独
占或并行装入数据库 。
例如:
STARTUP OPEN sale PFILE=initsale.ora PARALLEL;
如果用户指定独占(缺省),那么数据库只能由当前的事例装入并打开 。下面是一个独占的模式的事例

STRARTUP OPEN sales PFILE=initsales.ora EXECLUSIVE RESTRICT
另外:
STARTUP [FORCE] [RESTRICT] [PFILE= filename] [OPEN [RECOVER][ database] | MOUNT | NOMOUNT]
STARTUP OPEN:STARTUP缺省的参数就是OPEN,打开数据库,允许数据库的访问 。当前实例的控制文件中
所描述的所有文件都已经打开 。

STARTUP MOUNT:MOUNT数据库,仅仅给DBA进行管理操作,不允许数据库的用户访问 。仅仅只是当前实例
的控制文件被打开,数据文件未打开 。

STARTUP NOMOUNT:仅仅通过初始化文件,分配出SGA区,启动数据库后台进程,没有打开控制文件和数
据文件 。不能任何访问数据库 。

STARTUP PFILE= filename:以filename为初始化文件启动数据库,不是采用缺省初始化文件 。
STARTUP FORCE:中止当前数据库的运行,并开始重新正常的启动数据库 。
STARTUP RESTRICT:只允许具有RESTRICTED SESSION权限的用户访问数据库 。
STARTUP RECOVER:数据库启动,并开始介质恢复 。
SHUTDOWN有四个参数:NORMAL、TRANSACTIONAL、IMMEDIATE、ABORT 。缺省不带任何参数时表示是NORMAL
 。
SHUTDOWN NORMAL:不允许新的连接、等待会话结束、等待事务结束、做一个检查点并关闭数据文件 。启
动时不需要实例恢复 。

SHUTDOWN TRANSACTIONAL:不允许新的连接、不等待会话结束、等待事务结束、做一个检查点并关闭数
据文件 。启动时不需要实例恢复 。

SHUTDOWN IMMEDIATE:不允许新的连接、不等待会话结束、不等待事务结束、做一个检查点并关闭数据
文件 。没有结束的事务是自动rollback的 。启动时不需要实例恢复 。

SHUTDOWN ABORT:不允许新的连接、不等待会话结束、不等待事务结束、不做检查点且没有关闭数据文
件 。启动时自动进行实例恢复 。

另外,对于NORMAL、TRANSACTIONAL、IMMEDIATE,DB Buffer Cache的内容写入了数据文件,没有提交的
事务被回滚,所有的资源被释放,数据库被“干净”的关闭 。

对于ABORT,DB Buffer Cache的内容没有写入数据文件,没有提交的事务也没有回滚 。数据库没有
dismount和关闭,数据文件也没有关闭 。当数据库启动时,需要通过redo log恢复数据,通过回滚段对
事务回滚,对资源进行释放 。

---end----