关闭有四种:
shutdown normal :
shutdown transiction:等待事务提交后,再等所有用户关闭连接
shutdown immediate:未提交的事务将回滚,如插入3,后commit再插入4 再 shutdown immediate 这是数据库只有3,没有4
shutdown abort:强行关闭。。。。
前三种方式:关闭数据库----》卸载数据库----》关闭实例
最后一种:直接关闭实例(前两部其实已经强行关闭)
启动顺序解释:
1.启动例程(进程和内存)将dba比作一个仓库,那么实例相当于管理员,负责操作一个具体的数据库
2,装载数据库:好比向仓库里放入货物(数据库文件)
3.打开数据库: 将仓库的门打开,让用户可以连接
首先,oracle具有四种状态:shutdown(完全关闭),nomount(未加载),mount(已加载),open(完全打开),这四种状态加载方式通过命令行来操作比较好。以下是详细介绍:
shutdown :完全关闭状态 关闭命令是shutdown immediate(立即关闭)
注意:数据库的关闭顺序与数据库的加载顺序相反。
nomount:在这个状态下,oracle会打开参数文件,分配SGA并打开后台进程。
在这种状态下,可以查询后台进程和实例信息。如:
select * from v$bgporcess;
select * from v$instance;
v$parameter、v$sga、v$process、v$session、v$instance等等
mount:在mount状态下,oralce会在nomount的基础上,根据control_files的设置来打开控制文件。在nomount的基础上,进入此状态的命令是:alter database mount
在此状态下:可以执行的命令有:
select * from v$tablespace;命名空间
select * from v$datafile;数据文件
select * from v$database;数据库信息
v$controlfile、v$database、v$datafile、v$logfile
open: 这个状态表示数据库完全打开,在mount的基础上,使用命令alter database open,在mount的基础上根据控制文件的记录打开所有的数据文件和重做日志。
此状态下,就是完全打开的状态,可以进行权限范围内的所有操作。
注意:
1,在shutdown 状态,可以通过使用startup nomount |mount|open|force |restrict 直接跳到某个状态。force是强制进入open状态(无论当前什么状态),restrict是指进入open状态但只有具备了restricted session 权限的用户才可以登录。如果使用startup不加参数,那么直接就是进入open状态。
2,如果使用alter database ****才启动oracle ,必须按照顺序启动,即:nomount-->mount-->open。不能越级,不能反方向