为了回答关于《深入浅出Oracle》中的一些疑问,引出本系列文章,讨论链接参考:http://www
net/609499
html在上一讲中,我们说过:当我们使用file_hdrs事件来转储数据文件头信息时,Oracle会转储两部分信息,一部分来自控制文件,一部分来自数据文件,在数据库启动过程中,这两部分信息要用来进行启动验证
在数据库open的过程中,Oracle要进行检查中包含以下两个过程:第一次检查数据文件头中的Checkpointcnt是否与对应控制文件中的Checkpointcnt一致
如果相等,进行第二次检查
第二次检查数据文件头的开始SCN和对应控制文件中的结束SCN是否一致如果结束SCN等于开始SCN,则不需要对那个文件进行恢复
对每个数据文件都完成检查后,打开数据库
同时将每个数据文件的结束SCN设置为无穷大
通过以下过程我们来进一步说明一下这个内容
我们来看以下来自控制文件部分(选取一个文件测试):DATAFILE#4:(name#4)/opt/oracle/oradata/eygle/eygle01
dbfcreationsize=0blocksize=8192status=0xehead=4tail=4dup=1tablespace4,index=4krfil=4prev_file=0unrecoverablescn:0x0000
0000000001/01/198800:00:00Checkpointcnt:58scn:0x0000
002ac8ee08/11/200609:48:29Stopscn:0x0000
002ac8ee08/11/200609:48:29CreationCheckpointedatscn:0x0000
0015078d06/06/200609:41:54thread:0rba:(0x0