数据库的启停
启动数据库有三个步骤(三台阶)
停止数据库有四种模式
三台阶
1、nomount
1)找到对应的参数文件,先找专有二进制spfilesid.ora,如果没有,再找共有二进制spfile.ora,再没有找专有文本参数文件initsid.ora,最后找init.ora
2)、按照参数中描述的内存大小分配内存
3)、启动后台进程
4)、初始化V$的数据字典
5)、写启动日志到alert_sid.log($ORACLE_HOME:/bdump下)
nomount的启动不依赖于数据库,依赖于产品和参数文件
该阶段能做:
1、可以修改核心参数,比如db_name
2、创建数据库
3、创建、修改控制文件
2、mount
1)、读参数文件中的参数control_files中描述的控制文件
2)、校验控制文件的完整性
3)、把控制文件读入内存
4)、完善V$的字典
5)、把mount过程,写入到alert_sid.log文件
6)、读取数据文件和日志文件的路径及名字
该阶段可做:
1、rman备份恢复数据库
2、修改数据文件位置
只要有正确的控制文件,就可以到mount
mount的含义是借助了os的mount意思
mount是把实例连接到具体数据库
startup mount
alter database mount;
select status from v$instance;//查询数据库的启动状态
3、open
1)、读控制文件中描述的数据文件
2)、如果数据文件不和谐(未损坏),使用日志文件恢复
3)、数据库处于open状态
4)、只有open的数据库,老大sys以下的用户才可以访问
startup open 默认是open
alter database open
关闭数据库的四模式
默认是normal
新会话 等空闲 事务 存盘 停止
1、normal------------ N ---- Y ---- Y ---- Y ---- Y
2、transactional----- N ---- N ---- Y ---- Y ---- Y
3、immediate--------- N ---- N ---- 回 ---- Y ---- Y
4、abort------------- N ---- N ---- N ---- N ---- Y
上表中N为不允许,回为回滚,Y为允许
select name,fuzzy from v$datafile_header;
-------disconn //退出连接