Oracle数据库启动与关闭

数据库的开启与关闭
oracle数据库,数据库管理员必须拥有SYSDBA或SYSOPER的角色授权后才可能执行数据库的开启和关闭。
一、数据库开启
oracle数据库的开启分为几个步骤,每个步骤对应一个状态,每个状态可以执行相应的功能,以便正常的维护数据库。
⑴shutdown状态:此时数据库是关闭状态;
⑵nomount状态: 此时数据库去读取初始化参数文件parameter file,从而开启Instance实例,构建了用户与数据库之间的桥梁
⑶mount状态:   此时数据库会去读取控制文件control file,利用control file去连接数据库,将实例和数据库连接起来
⑷open状态:    此时数据库会去检查所有的数据文件及在线重做日志文件的checkpoint,查看是否一致,如果一致则开启数据库,否则保持mount状态
1、shutdown->nomount模式
⑴从shutdown模式到nomount模式,oracle会去执行的动作有:
  读取初始化参数文件parameter file,开启实例,并根据参数文件的设置配置共享内存SGA(System Global Area);
  开启警告文件alert file和跟踪文件trace file,开始记录操作信息;
  开启后台进程
⑵在nomount状态下可执行的动作有:
  创建新的数据库、重建控制文件等。因为此时数据库暂时不能访问数据库,同时也没有去读取控制文件参数
⑶从shutdown->nomount模式的命令如下:
SQL>startup nomount;
2、nomount->mount模式
⑴从nomount模式到mount模式,oracle会去执行的动作有:
  读取控制文件control file,oracle根据参数文件的内容区读取控制文件,通过读取控制文件就可以知道数据文件、在线重做日志文件的位置及文件名称。
⑵在mount状态下可执行的动作有:
  可以修改数据文件、在线重做日志文件等的名称
  可以开启或关闭归档模式
  可以进行数据库的恢复动作
⑶从nomount下的命令如下:
SQL>alter database mount;
同时,也可以直接从shutdown模式到mount,命令如下:
SQL>startup mount;
3、mount->open模式
⑴从mount模式到open模式,oracle主要是会根据控制文件里面的数据文件与在线重做日志等位置及名称去确认一次,当检查到某个文件不存在,oracle会保持
到mount状态。如果确认存在,则会继续去读取文件的最后一个检查号Checkpoint Number,去与控制文件里面的Checkpoint Number比较,看是否一致,
如不一致,则会进行instance recovery是checkpoint number一致。如一致,oracle就会开启数据库。
⑵从mount模式到open模式的命令如下:
SQL>alter database open;
同时,如果从shutdown到open,则命令如下:
SQL>startup open或startup;
二、oracle数据库开启选项与指令
oracle数据库开启指令选项如下:
STARTUP [FORCE] [RESTRICT] [PFILE] [OPEN [RECOVER] [DATABASE] | NOMOUNT | MOUNT];
OPEN:指oracle数据库开启到open状态,startup命令默认情况下是开启到open状态,所以不需要open选项;
NOMOUNT:指oracle数据库开启到nomount状态;
MOUNT:指oracle数据库开启到mount状态;
FORCE:指当oracle正在运行instance时,强制把实例关闭,并重新启动数据库到一个新的状态
SQL>startup force mount;
SQL>startup force;
SQL>startup force nomount;
RESTRICT:指限制用户使用数据库(暂时不对该参数做详细解释,后续补充)
PFILE:指数据库开启可以指定一个初始化参数文件来启动数据库
SQL>startup pfile='/opt/oracle/product/10.2.0/db_1/dbs/init.ora';
三、数据库的关闭
1、oracle数据库的关闭跟开启一样也是堆栈的动作,但与开启最大的不同是,数据库的关闭不能中间停止,必须一次完成。
⑴open模式到mount模式
⑵mount模式到nomount模式
⑶nomount模式到shutdown模式
2、oracle关闭数据库的指令如下:
SHUTDOWN [NORMALE | TRANSACTIONAL | IMMEDIATE | ABORT]
⑴shutdown normale:指数据库关闭时,如果存在用户连接了数据库,则需要等待用户退出当前会话时,Oracle才完全关闭,关闭之前会做一次checkpoint,保证控制文件的序号和数据文件、在线重做日志文件序号一致。
⑵shutdown transcational:指数据库关闭时,如果存在用户连接了数据库,则需等待当前用户执行当前的动作后,Oracle才完全关闭,此时不需要等待用户退出数据库才关闭,关闭之前会做一次checkpoint,保证控制文件的序号和数据文件、在线重做日志文件序号一致。
⑶shutdown IMMEDIATE:指数据库在线所有动作终止,未commit的数据Rollback回去,Rollback完之后,所有用户退出,此时Oracle做一次Checkpoint。
⑷shutdown abort:指数据库强制关闭,类似于数据库崩溃(crash),当数据库重新启动时,需要执行Instance Recovery。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值