SCN(数据库更新后的数字)

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个工作日内进行整改,谢谢!

发表回复

登录后才能评论