码迷,mamicode.com
首页 > 其他好文 > 详细

备份概念(一致性、非一致性)

时间:2016-10-02 07:18:02      阅读:690      评论:0      收藏:0      [点我收藏+]

标签:备份的概念

一致性备份(consistent backup)的含义是,备份所包含的各个文件中的所有修改都具备相同的系统变化编号(system change number,SCN)。
   也就是说,备份所包含的各个文件中的所有数据均来自同一时间点。与非一致性备份(inconsistent backup)不同,
   使用一致性数据库完全备份(consistent whole database backup)进行复原(restore)后,不需要执行恢复操作(recovery)。
非一致性备份指,在数据库处于打开(open)状态时,或数据库异常关闭(shut down abnormally)后,对一个或多个数据库文件进行的备份。

    1 一致性备份概述
 对数据库整体或部分进行的一致性备份(consistent backup)后,备份中所有数据文件(datafile)及控制文件(control file)
都经历过相同检查点(checkpoint),拥有相同的 SCN。
    进行一致性数据库完全备份(consistent whole database backup)的唯一方法是:首先使用 NORMAL,IMMEDIATE,或 TRANSACTIONAL 选项关闭数据库
并在数据库处于关闭状态时进行备份
     Oracle 通过数据库检查点操作使数据文件和控制文件拥有相同的 SCN,即具备一致性。在一致性备份中,只有只读表空间(read-only tablespace)及
脱机表空间(offline tablespace)的 SCN 可以比备份中其他文件的 SCN 滞后。这两种表空间内的数据不会被修改,因此她们也能满足一致性的要求。
    一致性数据库完全备份的重要特点是,使用此种备份复原(restore)的数据库无须恢复(recovery)即可打开(open),
这是因为复原的数据库具备一致性:复原的数据文件内的数据是正确的,无须用户进行任何处理。用户可以使用一年前的一致性备份复原数据库,
    而无须进行介质恢复(media  recovery),Oracle 也不必执行实例恢复(instance recovery)。
    但是,如果使用一致性备份复原数据库而没有应用重做日志(applying redo),备份之后产生的事务将全部丢失。
    
    2  非一致性备份
    如果数据库没有完全关闭,例如出现实例故障,或用户使用了 SHUTDOWN ABORT 语句,此时数据库的数据文件是非一致性的,即控制文件和redo log,
dbf这三个拥有的scn不一至,除非此数据库为只读数据库。    
    如果数据库运行在 NOARCHIVELOG(非归档)模式下,一致性数据库完全备份是唯一有效的备份方案,因为使用非一致性备份(inconsistenbackup)复原数据库后需要执行恢复操作来确保数据一致性。在NOARCHIVELOG 模式下,Oracle 不会对重做日志进行归档,因此恢复所需的重做日志可能已经不存在了。而运行在 ARCHIVELOG(归档)模式下的数据库,可以采用一致性数据库完全备份。当使用此种备份复原数据库后,用户可以立即打开数据库,使备份后发生的事务全部丢失;如果归档的重做日志存在,用户也可以应用这些日志从而恢复备份后发生的事务。 

备份概念(一致性、非一致性)

标签:备份的概念

原文地址:http://11106335.blog.51cto.com/11096335/1858299

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!