0
点赞
收藏
分享

微信扫一扫

oracle 启动的步骤


startup 启动三步


startup nomount ;


alter database mount;


alter database open;




startup nomount : 启动实例  




     1.读参数文件


     2.分配内存


     3.启动后台进程


     4.初始化部分v$视图




startup mount :挂载


     alter database mount;


     control_files =决定控制文件的个数和位置


     控制文件:记录数据库中数据文件,日志文件的位置信息,检查点信息


     实例通过控制文件的描述  挂载到相应的库上


控制文件的位置信息。在mount数据库的过程中,oracle需要加载并锁定控制文件。




open: 校验




   根据控制文件中记录的信息找到数据文件,日志文件检查点等信息, 进行检查点以及完整性校验 ,如果不一致或文件丢失就需要恢复。


   alter database open read[wrote|only]: 两者的切换只能重启


   1. nomount    : 参数文件


   2. mount      :控制文件


   3. open       :数据文件




oracle 在open的过程中,进行校验有以下两项:




   第一次检查数据文件头中检查点计数(checkpoint cnt)是否和控制文件中检查点计数(checkpoint cnt)一致。此步检查用以确认数据文件是来自同一版本,而不是从备份中恢复而来(因为checkpoint cnt不会被冻结,会一直被修改)


数据文件头的开始scn和控制文件中记录的scn是否一致,如果一致就不需要对该数据文件进行恢复,对每个数据文件完成检查后,打开数据库,锁定数据文件,同时将每个数据文件的结束scn设置为无穷大。




[root@zw_test_26_75 orcl]# mv zw.dbf  zw.dbf.b






 


数据库在启动的时候,在open阶段,oracle才会检查这个文件的存在性,如果文件不存在,就会报错;


SQL> startup nomount;



ORACLE instance started.






Total System Global Area 1603411968 bytes



Fixed Size



Variable Size



Database Buffers



Redo Buffers



SQL> alter database mount;



Database altered.



SQL> alter database open;



alter database open



*



ERROR at line 1:



ORA-01157: cannot identify/lock data file 5 - see DBWR trace file



ORA-01110: data file 5: '/u01/app/oracle/oradata/orcl/zw.dbf'




注意:仅在open阶段oracle才尝试打开并锁定数据文件。




----------------------------------------------------------------------




关闭数据库几种方式:


shutdown abort : 相当于拔电源(nomount状态,abort没问题)


shutdown  immediate :  断掉连接,存盘,结束进程;事物rollback


shutdown  transactional : 等待所有的事物结束,等待事物commite,或 rollback;


shutdown  normal : 等待所有的会话结束


shutdown   startup force : 相当于拔掉电源,再重启




oracle 没有主动提交的事物都是非法的事物


如果修改了pfile,或 spfile : 推荐 一步一步的重启




举报

相关推荐

0 条评论