SCN与数据恢复的关系

Oracle内部主要存在以下四种SCN
1.系统检查点(system checkpoint)SCN

每当一个检查点完成时,Oracle就把该检查点对应的SCN记录到控制文件中,可以用以下语句查看当前数据库 的检查点SCN:
select
CHECKPOINT_CHANGE# from v$database;

CHECKPOINT_CHANGE#

------------------
        6627441168

2.数据文件头SCN(数据文件的启动SCN)
该SCN记录在每个数据文件头中,正常情况下,该SCN应该和记录在控制文件中的检查点SCN一致,可以用以下语句查看数据文件头的SCN:

select FILE#,CHECKPOINT_CHANGE# from v$datafile_header;


     FILE# CHECKPOINT_CHANGE#
----------
------------------
        
1         6627448310

        
2         6627448310

        
3         6627448310

        
4         6627448310

        
5         6627448310

3.数据文件的检查点SCN和终止SCN
这两个SCN不是记录在数据文件中,而是记录在控制文件中,可以通过以下语句查看:

select CHECKPOINT_CHANGE#,LAST_CHANGE# from v$datafile;


CHECKPOINT_CHANGE# LAST_CHANGE#
------------------ ------------

        6627448310

        6627448310

        6627448310

        6627448310

6627448310

那么Oracle是如何根据这些不同的SCN来判断某个数据文件是否需要恢复以及恢复类型呢?可以用下面的伪代码描述:

if (数据文件检查点SCN <数据文件头SCN)
then "控制文件来自备份,需要进行不完全恢复,恢复之后得用resetlog方式打开”
else if (数据文件检查点SCN > 数据文件头SCN)
then "数据文件来自备份,需要log进行完全或不完全恢复"
else if (数据文件检查点SCN = 数据文件头SCN)
then "数据库能正常open,还需要判断是否需要实例恢复"
if (数据文件终止SCN = 数据文件检查点SCN)
then "数据库打开时不需要实例恢复“
else if (数据文件终止SCN = NULL)
then "数据库需要实例恢复"

原文链接:http://blog.csdn.net/u010415792/article/details/8858582

SCN与数据恢复的关系,码迷,mamicode.com

时间: 2024-10-26 17:06:56

SCN与数据恢复的关系的相关文章

【oracle】摸拟故障 - 数据文件丢失恢复,SCN的作用。

模拟数据文件丢失恢复,redolog.archivelog.controlfile文件未丢失的情况恢复. 1.  创建一个表空间.用户.分配权限.建表. a)   createtablespace HXW_WEN datafile'D:\ORACLE\ORADATA\HXW168\HXW_WEN_D01.DBF' size5M autoextendonnext1M maxsize20M; b)createuser wen identifiedby zerostudy defaulttablesp

【体系结构】有关Oracle SCN知识点的整理

[体系结构]有关Oracle SCN知识点的整理 1  BLOG文档结构图 2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① Oracle中的SCN是什么?(重点) ② 如何查询SCN?(重点) ③ SCN有哪些分类?(重点) ④ SCN和系统恢复的关系?(重点) ④ 实例恢复和介质恢复的区别是什么?RAC中的实例恢复是什么样的?(重点) ⑥ SCN和时间的转换 ⑦ SMON_SCN_TIME

Oracle Study之案例--数据恢复神器Flashback(3)

Flashback Database: 案例分析: flashback database:利用flashback log 对整个database 做回退到过去的某个时间点(用于DDL 的误操作如drop 和 truncate),类似于RMAN的不完全恢复(media recovery incompelete) 因为flashback database是不完全恢复,在恢复到过去的时间点前应该对数据库备份! 1.查看flashback database是否开启 07:21:27 SQL> selec

golden gate的DDL配置

DDL复制的配置 目前只支持oracle和teradata的ddl复制 oracle能复制除了系统对象之外的所有对象 两种配置方法: 基于trigger的DDL:对于生产库有一定影响. 原理: 源库建立一个oracle全库级别的trigger捕捉DDL操作到中间表. extract读取中间表的DDL语句并且与DML语句根据csn排序. 目标端重现该DDL操作sql语句. 特点: DDL和DML复制原理不同: DDL复制基于Trigger,DML复制基于日志,两者复制机理不同,它们之间的数据捕捉是

SCN系统变更号以及它和恢复的关系

一.SCN基础 1.什么是scn? 在oracle数据库中保证数据一致性的方法就是事务.事务是一个逻辑的.原子性的作业单元,通常由一个或多个sql组成,一个事务中的所有sql操作,要么失败全部回滚,要么成功全部提交.数据库的事务最主要的作用就是保证了数据的一致性,每次事务的提交都是将数据库从一种一致性状态带进另外一种一致性状态. scn在数据库中是一个单一的不断的随着数据库一致性状态的改变而自增的序列.每个scn值代表着数据库运行中的一个一致性的点. 2.SCN概述 2.1.系统检查点scn(s

Oracle SCN与Timestamp之间的关系

SQL> conn / as sysdba SQL> select scn , to_char(time_dp,'yyyy-MM-dd hh24:mi:ss') from smon_scn_time; sys.smon_scn_time表中记录了时间戳与SCN之间的对应关系,每隔五分钟会记录一次时间戳与SCN的对应关系到该表中. 该表记录了最近1440个时间戳与SCN的对应关系. Oracle SCN与Timestamp之间的关系

Oracle Study之案例--数据恢复神器Flashback(1)

Oracle Study之案例--数据恢复神器Flashback(1) Flashback: Flashback 技术是以Undo segment中的内容为基础的, 因此受限于UNDO_RETENTON参数.要使用flashback 的特性,必须启用自动撤销管理表空间. 在Oracle 11g里又出了一个新特性:Oracle Flashback Data Archive. FDA通过将变化数据另外存储到创建的闪回归档区(Flashback Archive)中,以和undo区别开来,这样就可以为闪

Innodb中的事务隔离级别和锁的关系

前言: 我们都知道事务的几种性质,数据库为了维护这些性质,尤其是一致性和隔离性,一般使用加锁这种方式.同时数据库又是个高并发的应用,同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力.所以对于加锁的处理,可以说就是数据库对于事务处理的精髓所在.这里通过分析MySQL中InnoDB引擎的加锁机制,来抛砖引玉,让读者更好的理解,在事务处理中数据库到底做了什么. #一次封锁or两段锁? 因为有大量的并发访问,为了预防死锁,一般应用中推荐使用一次封锁法,就是在方法的开始阶段,已经预先知道

关于mongodb ,redis,memcache之间见不乱理还乱的关系和作用

关于mongodb ,redis,memcache之间见不乱理还乱的关系和作用 标签: redismongodbfloatshardingfunction测试 2012-05-23 15:17 32842人阅读 评论(9) 收藏 举报  分类: memcache redis 版权声明:本文为博主原创文章,未经博主允许不得转载. 先说我自己用的情况: 最先用的memcache ,用于键值对关系的服务器端缓存,用于存储一些常用的不是很大,但需要快速反应的数据 然后,在另一个地方,要用到redis,然