beilycao 发表于 2006-06-20 15:21

关于shutdown、startup几个参数的请教

关于shutdown、startup几个参数的请教

请教startup mount/nomount/open几种方式启动数据库分别有什么意义?什么时候用哪个模式?shutdown normal/immediate/abort有什么不同之处?为什么用shutdown immediate关闭数据库后,远端还能连接上数据库并进行建表、查询表等操作?另外在关闭数据库时候出现过“shutdown in progress”错误,后来用shutdown abort才关闭,是什么原因产生的?谢谢

starlvzhen 发表于 2006-06-20 16:05

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恢复数据,通过回滚段对事务回滚,对资源进行释放。

STARTUP [ 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:数据库启动,并开始介质恢复。

beilycao 发表于 2006-06-20 16:30

谢谢你,用shutdown immediate关闭数据库后,为什么远端还能进行建表、查询等操作,这些操作是自动记录在DB Buffer Cache中了吗?谢谢

imtj 发表于 2006-06-20 22:40

用shutdown immediate关闭数据库后,为什么远端还能进行建表、查询等操作
可以吗???重来没有遇到过你说的这种情况哦!

gongzidong 发表于 2006-06-22 11:33

涨知识了

jametong 发表于 2006-06-23 19:10

原帖由 imtj 于 2006-6-20 22:40 发表
用shutdown immediate关闭数据库后,为什么远端还能进行建表、查询等操作
可以吗???重来没有遇到过你说的这种情况哦!

不是同一个数据库吧.. :)

showzhonghua 发表于 2012-07-12 16:57

好帖:victory:
页: [1]
查看完整版本: 关于shutdown、startup几个参数的请教