我的oracle 9i学习日志(6)--Starting Up and shutting down a Database-阿里云开发者社区

开发者社区> 余二五> 正文

我的oracle 9i学习日志(6)--Starting Up and shutting down a Database

简介:
+关注继续查看
Starting Up a Database
1 
 
 
1、NOMOUNT
这个状态下oracle server完成下列任务:
    a.读取初始化参数文件;
    b.为SGA分配内存;
    c.启动后台进程;
    d.打开alertSID.log文件和跟踪文件
数据库必须被命名,即初始化文件或在startup命令里指定DB_NAME的值。
2、MOUNT
关联一个数据库与在nomount启动的instance;定位并打开按参数文件指定的control files;读取数据文件和重做日志文件的名字和状态。但在这个阶段不会确认数据文件和重做日志文件的存在。
在这个阶段只能做一些指定数据库维护工作,如:重命名数据文件、开启或关闭归档模式、数据恢复(这些操作只能在此状态下做)。
3、OPEN
打开数据库文件和重做日志文件。这时数据库就可以被正常访问。这个阶段会确认相关文件能否被打开和数据库记录的一致性,否则会报错。如果有必要SMON将开始恢复工作。
4、STARTUP Command
STARTUP [FORCE] [RESTRICT] [PFILE=filename][OPEN[RECOVER][database]|MOUNT|NOMOUNT]
    force:强制启动或关闭(相当于执行shutdown abort)正在运行的instance,并重新启动。常在数据库无法正常启动(可能是由于上次关闭instance后内存空间分配不正常所致)的情况下使用。?
    restrict:只允许有RESTRICTED SESSION特权的用户访问
    pfile:指定启动的pfile文件。
    open recover db0:启动时恢复数据。
     nomount/mount:启动数据库至nomount或mount状态。
5、将数据库从nomount状态转变成mount状态或从mount状态转变为open状态:ALTER DATABASE { MOUNT | OPEN }。注意:不能从nomount状态直接转变为open状态,启动顺序只能是这样:shutdown->nomount->mount->open->shutdown。
6、Restricted Mode
在限制模式下,只有拥有限制会话特权的用户可以登录。
进入限制模式有两种方式:STARTUP RESTRICT  或   ALTER SYSTEM ENABLE RESTRICTED SESSION;
启用或禁用restrict模式:ALTER SYSTEM [ {ENABLE|DISABLE} RESTRICTED SESSION ]。
7、终止一个会话
用于在将数据库置于restrict模式下时可能要终止其他用户的会话,或管理员主动终止某个用户的会话。
ALTER SYSTEM KILL SESSION 'integer1,integer2' 
    ? integer1: Value of the SID column in the V$SESSION view 
    ? integer2: Value of the SERIAL# column in the V$SESSION view
终止会话过程:
    a.回滚用户当前事务
    b.释放当前锁定的表或行
    c.释放保留给客户的资源
8、只读模式
在mount状态下用下面命令可以切换到只读模式:
ALTER DATABASE OPEN  READ ONLY;
在mount状态下用下面命令可以切换到一般模式:
ALTER DATABASE OPEN READ WRITE;
只读模式只是不产生redo log file,所以只要不涉及产生重做数据的操作都可以做,如:数据库恢复、数据库文件的offline和online 等。
注意:只读模式和一般模式不能互相切换。
问题:
SQL> alter database open read only; 
alter database open read only 

ERROR at line 1: 
ORA-16005: database requires recovery
ALTER DATABASE OPEN [READ WRITE| READ ONLY]
解决方案:SQL> startup open recover lty(数据库名字)
Shutting Down the Database
1 
注:A = ABORT     I = IMMEDIATE     T = TRANSACTIONAL     N = NORMAL
命令:SHUTDOWN [NORMAL | TRANSACTIONAL | IMMEDIATE | ABORT ]
shutdown normal:不建立新连接;将redo buffers里的内容写入磁盘;关闭instance前必须所有等待用户主动断开连接;
查看未提交的事务:
SQL> select addr,status from v$transaction;
ADDR  STATUS
-------- ----------------
59AF4CF4 ACTIVE
shutdown immediate:不建立新连接;中断正在执行的sql语句;回滚未提交的事务;断开在线用户;将redo buffers里的内容写入磁盘;关闭instance。
shutdown transactional:不建立新连接;客户端无法发起新的事务;客户端事务处理完成后断开客户端连接;将redo buffers里的内容写入磁盘;关闭instance。
shutdown abort:立即关闭instance;redo buffers里的内容不会写入磁盘;下次启动会自动执行数据库恢复程序。









本文转自 d185740815 51CTO博客,原文链接:http://blog.51cto.com/luotaoyang/280377,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Oracle学习笔记之与权限相关的视图
Oracle学习笔记之与权限相关的视图
106 0
IOS开发应用之Quartz 2D学习指南
引用:http://mobile.51cto.com/iphone-284414.htm IOS开发应用之Quartz 2D学习指南是本文要介绍的内容,主要是来学习Quartz 2D的使用方法和操作。
720 0
手把手教你完成MaxCompute JDBC自定义日志配置
本文讲述了如何在MaxCompute JDBC 2.0 beta版本中完成日志功能的相关配置,并进一步对logback的配置文件进行了示例及说明。
5052 0
+关注
13347
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载