日期:2014-05-17  浏览次数:20789 次

小弟刚学Oracle求大神门请教SCN的一些问题
小弟刚毕业,正在做初级java工程师的实习期。领导让我多了解一些关于Oracle的知识,刚看到SCN的一些内容,云里雾里的,只知道数据库中SCN无处不在,常见的事务表、控制文件、数据文件头、日志文件、数据块头等。但是这些SCN到底有什么意义呢?求大神们指点小弟一下以免多走弯路。

------解决方案--------------------

初学者不建议搞的这么深入,先掌握搞基本的知识,掌握常见的概念和操作。 知道什么是SCN 就可以了。

深入研究这种概念,不适合初学者。 
------解决方案--------------------
最直接的,保持数据一致性,
oracle要管理这么多数据,得最起码有个红绿灯大家遵守,另外还要负责备份恢复,这就必须要能够控制时间点做时光倒流等
------解决方案--------------------
启动库的时候要让数据文件,数据文件头部,和控制文件中的database中的SCN号一样才能开库 
还有在恢复数据库的时候也要对SCN号进行比较,主要是不完全恢复是不同的时间,就是他们SCN号不一致,用recover命令让三个文件中的SCN号一致才能完成恢复,并且开库。
------解决方案--------------------
select checkpoint_change# from v$database;
select checkpoint_change# from v$datafile;
select checkpoint_change# from v$datafile_header;