当前位置:首页 > 数据库 > Oracle

[ORACLE] SNC 学习

SCN

      SCN(System Change Number),也就是通常所说的系统改变号或者系统提交号,是数据库中非常重要的一个数据结构。

SCN用以标识数据库在某个确切时刻提交的版本。在事务提交时,它被赋予一个唯一的标识事务的SCN。SCN同时被作为Oracle数据库的内部时钟机制,可被看做逻辑时钟,每个数据库都有一个全局的SCN生成器。SCN在数据库中是唯一的,并随时间而增加,但是可能并不连贯。除非重建数据库,SCN的值永远不会被重置为0.

作用: 一致性读/保证事务的唯一性/物理备份恢复机制重要的判断点

            SQL
            >
            select checkpoint_change#,last_change# from v$datafile; --last_chagne#为空或无穷大 0Xffffffff
CHECKPOINT_CHANGE# LAST_CHANGE#
------------------ ------------920030892003089200308920030892003089200308920030892003088 rows selected

SQL>selectfile#,creation_change#,resetlogs_change# from v$datafile_header;

     FILE# CREATION_CHANGE# RESETLOGS_CHANGE#
---------- ---------------- -----------------193147070354803147070419204463147070732876314707013217186031470701753563443147070185356374314707019535640031470708 rows selected

SQL>selectfile#,change# from v$backup;

     FILE#    CHANGE#
---------- ----------192003083920030849200308792003081392003081792003081892003081992003088 rows selected

SQL>alterdatabasebeginbackup;

Database altered

SQL>selectfile#,change# from v$backup;

     FILE#    CHANGE#
---------- ----------192007233920072349200723792007231392007231792007231892007231992007238 rows selected
SQL>alterdatabaseendbackup;

Database altered

SQL>select FIRST_CHANGE#,NEXT_CHANGE# from v$log;

FIRST_CHANGE# NEXT_CHANGE#
------------- ------------911147991671359066420911147991671351.8446744073

 

原文:https://www.cnblogs.com/tingxin/p/12897741.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!