小编讲的是oracle数据库的启动与关闭,废话不多说全是干货
oracle数据库的启动有三个阶段:
阶段一:读取参数文件并判断定义是否有错误,在这个阶段会根据参数定义分配相关内存打开alert文件,跟踪文件并记录信息启动相关的后台进程。
阶段二:装载数据库
使数据库与以前启动的实例关联。
定位并打开参数文件中指定的控制文件。
读取控制文件获取数据文件和重做日志文件的名称和状态。
但是在此时不进行数据文件和联机重做日志文件是否存在的检查。
本阶段用的文件是控制文件,数据库处于mount阶段
在mount阶段,你可以对数据库的物理结构进行操作。
alterdatabase 指令如命名数据文件
启用和禁用重做日志归档选项
执行完全数据库恢复
createdatabase指令
dropdatabase 指令
阶段三:打开数据库
打开联机数据文件
打开联机重做日志文件
验证所有数据文件和联机重做日志文件是否可以打开,并检查数据库的一致性。
如果需要,系统监视器后台进程
(SMON)
启动实例恢复
前滚以恢复尚未记录在数据文件中但已记录在联机重做日志中的数据
打开数据库而不是等待回退全部事务后才使数据库可用
未恢复事务锁定的数据立即可用
在SMON和各个服务器进程访问锁定的数据时回退它们未提交的事务
本阶段数据库使用数据文件,日志文件,物理文件的逻辑关系,验证一致性。
数据库处于open阶段,数据库启动完毕,数据库的逻辑结构与物理结构可以正常工作了
具体操作如下:启动数据库:startup(一步到位,直接启动)
下面是分步解析:
不启动的话:
发现在这个数据库中查不到任何信息
但是可以读到内存参数信息(show parameter)
但是读取不到库的信息
通过参数文件中记载的控制文件位置来加载控制文件
启动这个只能知道数据文件的位置并不能加载数据文件:
通过控制文件中记载的数据文件,日志文件的位置来加载打开数据文件,日志文件
现在就是正式启动了:
将缓冲区高速缓存中的更改及重做日志缓冲区高速缓存中的条目写入数据文件和联机重做日志文件
关闭所有联机数据文件和联机重做日志文件
卸装数据库
关闭其控制文件
ALERT文件和跟踪文件将关闭,
SGA被回收并且后台进程被终止
四种模式:
SHUTDOWN[NORMAL | TRANSACTIONAL | IMMEDIATE | ABORT ]
关闭模式:
A = ABORT I = IMMEDIATE
T = TRANSACTIONAL N = NORMAL
Shutdown命令可以关闭数据库,它后面可以有如上四个选项,其中最后一个Normal是默认值。
上面是它的对比,
下面是具体操作解析:
关闭数据库:shutdown (一步到位,直接关闭)
DDL语句是create table DCL语句是创建用户,授权等 这些语言都会在操作之前提交事物,操作完成后提交事务