1.在oracle中对于数据的恢复是离不开scn的,每个事务都会被赋予一个scn值,scn会出现在事务表、数据块头、控制文件、数据文件头以及redo记录中,下图列出oracle中一些重要的scn
2.第一个要说的scn就是系统检查点scn,每当一个检查点动作完成,oracle就会把这个检查点对应的scn值记录在控制文件中,如下图查看系统全局检查点scn号
3.另外通过alter system checkpoint;可触发系统检查点
4.另外还有两条命令是查询系统当前scn号的命令,系统检查scn3秒变化一次, 如但只会增加不会减少下图select current_scn from v$database;select dbms_flashback.get_system_change_number from dual;
5.当前数据文件SCN。在控制文件中。即checkpoint scn,表示该数据文件最近一次执行检查点操作时的SCNselect name,checkpoint_change# from v$datafile;
6.数据文件头的scn也叫做数据文件的启动scn,可通过下图命令进行查询select name,checkpoint_change# from v$datafile_header;
7.还有一个数据文件结束SCN,在控制文件中,LAST_CHANGE#,如果数据库非正常关闭值为NULL。正常关闭是关闭时的SCN。select name,last_change# from v$datafile;
8.另外在日志组视图中也存在一个scn号,它的使用是用来显示日志范围
此经验由勇敢的choy原创,觉得此经验对你有帮助,请点击下面【投票】予以支持,也可以点击上面的【五角星】来收藏