1、在oracle中对于数据的恢复是离不开scn的,每个事务都会被赋予一个scn值,scn会出现在事务表、数据块头、控制文件、数据文件头以及redo记录中,下图列出oracle中一些重要的scn
2、第一个要说的scn就是系统检查点scn,每当一个检查点动作完成,oracle就会把这个检查点对应的scn值记录在控制文件中,如下图查看系统全局检查点scn号
3、另外通过alter system checkpoint;可触发系统检查点
4、另外还嘀芟苒疾有两条命令是查询系统当前scn号的命令,系统检查scn3秒变化一次, 如但只会增加不会减少下图select current_scn fro罪焐芡拂m 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号,它的使用是用来显示日志范围