SCN(System Change Number 简称 SCN)是当Oracle数据库有更新后,由DBMS自动维护去累积递增的一个数字。有四种SCN,分别为:系统检查点SCN、数据文件检查点SCN、启动SCN、终止SCN。Oracle把这个检查点的scn存储在每个数据文件的文件头中,这个值称为启动scn,因为它用于在数据库实例启动时,检查是否需要执行数据库恢复。有systemchangenumber和systemcommitnumber两种说法,表达的都是同一个意思,即SCN是数据库系统中顺序增长的一个数字,用来精确区别操作的先后顺序。
简介
在Oracle中,有四种SCN,分别为:系统检查点SCN、数据文件检查点SCN、启动SCN、终止SCN。
1、系统检查点scn
当一个检查点动作完成后,Oracle就把系统检查点的SCN存储到控制文件中。
2、数据文件检查点scn
当一个检查点动作完成后,Oracle就把每个数据文件的scn单独存放在控制文件中。
3、启动scn
Oracle把这个检查点的scn存储在每个数据文件的文件头中,这个值称为启动scn,因为它用于在数据库实例启动时,检查是否需要执行数据库恢复。
4、终止scn
每个数据文件的终止scn都存储在控制文件中。
常识
英文翻译
有systemchangenumber和systemcommitnumber两种说法,表达的都是同一个意思,即SCN是数据库系统中顺序增长的一个数字,用来精确区别操作的先后顺序。
最大值
Oracle使用6Bytes记录SCN,也就是48位,其最大值是:281,474,976,710,656
合理性
Oracle数据库当前最大的SCN被称为”最大合理SCN”,可以使用SQL语句来计算。
查询
查询开始时候,只查询小于等于该时刻对应的SCN中的数据;所以,若查询花费时间很长的话,获得的数据可能不是最新的数据(即是数据回滚段中的数据)。
该文章由作者:【过期罐头】发布,本站仅提供存储、如有版权、错误、违法等相关信息请联系,本站会在1个工作日内进行整改,谢谢!