一.增量备份的相关概念

1. 在前面说明了RMAN的完整备份,完整备份是备份所用使用过的块,不备份没有使用的过的块;增量备份只备份自上次备份以来更改过的块。

2.即使RMAN的默认操作是在增量备份时扫描整个数据文件来确定哪些块已经更改,也仍然节省时间,因为在所有情况下,瓶颈都在于对磁盘的写操作 ,而不是文件的读取。如果再启用块变更跟踪,这样就不用扫描整个文件了,备份时间也大大减少了。

3.用户管理的备份是不能实现增量备份的,RMAN可以实现。

4.增量备份分为积累增量备份和差异增量备份,积累增量备份是自上次完整备份以来所有更改过的块;差异增量备份是自上次增量备份以来更改的所用块。

二.增量备份的级别

1.增量备份依赖于包含所有块的起点:这个称为增量级别0备份。然后,差异增量级别1备份将提取自上一个级别1备份以来所有更改过的块,如果没有介于其间的级别1备份,则提取自上一个级别0备份以来更改的所用块。积累增量备份将提取自上一个级别0备份以来更改过的所有块,不考虑期间是否存在任何级别1备份。

2增量级别0备份和完整备份的效果是一样的,只是增量级别0备份可以作为增量备份起点而完整备份不可以。

3.在较早的RMAN版本中增量的级别可以指定0到4个级别,

Different incremental backups contain only modified blocks  from level n(1~4) or lower.

Cumulative  incremental backups contain only modified blocks from level n(0~3) or lower.

即差异增量备份是备份两个相同级别之间(指两个间隔的时间)所有变更的块或者没有和现在级别相同的备份则找到较低的级别,备份两者之间的变更块;积累增量备份是备份现在这个级别到比现在低一个级别所有变更的块或者找到比现在更低的级别之间更改块的备份。

三.增量备份的实现

1.对文件/u01/oradata/wilson/paul01.dbf进行增量备份,它的文件号是6,命令如下,

RMAN> run{

2> allocate channel d1 type disk;

3> backup incremental level 0 datafile 6 format='/u01/backup/l0_%U';

4> }

这是增量0级备份,作用效果和完整备份一样,备份所用使用过的块,但它可以作为增量备份的基础,而完整备份不可以。

2.对文件进行增量1级别备份,命令如下

RMAN> run{

2> allocate channel d1 device type disk;

3> backup incremental  level 1  datafile 6 format='/u01/backup/l1_%U';}

它备份自上一个级别1备份(对于第一运行,是级别0)以来更改的所有块。

3.对文件进行积累增量备份

RMAN> run{

2> allocate channel d1 type  disk;

3> backup   incremental  level 1 cumulative datafile 6 format='/u01/backup/l1c_%U';

4> }

它备份自级别0备份以来更改的所有块。

4.如果没有运行级别0备份,那么第一次级别1差异备份或者积累备份将实际执行级别0备份。

5.如果备份时间较长可以用视图v$session_longops来查看时间,记录中超过6s以上的操作,

SQL> select sid,sofar,totalwork  from  v$session_longops;

SID      SOFAR  TOTALWORK

---------- ---------- ----------

40          1          1

40          2          2

其中sofar是到目前为止所运行的时间,totalwork是总共需要运行的时间。

四.变更块跟踪

1. RMAN的默认操作是在增量备份时扫描整个数据文件来确定哪些块已经更改,这样做的优点是允许RMAN检查块的损坏,但这样花费的时间较长,所以开启变更块更踪,RMAN在执行增量备份时读取变更跟踪文件就可以确定需要备份的块,这样大大减少了时间。

2.变更跟踪文件的默认位置是DB_CREATE_FILE_DEST目录(如果作了定义),也可以指定跟踪文件的名称和位置。

3.启用块变更跟踪,指定文件名和位置,命令如下,

SQL> alter database enable block change tracking using file '/u01/change_tracing.dbf';

Database altered.

关闭块变更跟踪,关闭后变更跟踪文件自动删除,命令如下,

SQL> alter database disable block change tracking ;

Database altered.

五.标签

给备份级一个逻辑的名字,方便管理。给备份级加上标签,

RMAN> run{

2> allocate channel d1 device type disk;

3> backup incremental level  1  datafile 11 tag='sun';}

直接查找

RMAN> list backup tag='sun';

六.相关视图

1.视图v$session

SQL> select sid,username,client_info from v$session;

SID      USERNAME                                CLIENT_INFO

---------- ------------------------------          -----------------------------------

36

37          SYS

38          SYS                            rman channel=ORA_DISK_1

40          SYS

可以看到启动的服务器进程,rman一旦连接上,就会默认启动2个服务器进程,polling和defalut进程,备份时会需要第三个会话:通道。

2.set command to 命令,命令如下

RMAN> run{

2> allocate channel d1 type disk;

3> set command id to 'sunshine';

4> backup datafile 6 format='/u01/backup/p_%U';}

指定set command id  to  ‘sunshine’;

可以在v$session会话中查到相关的进程,

SQL> select sid,username,client_info from v$session;

SID      USERNAME           CLIENT_INFO

---------- ------------------------------ -----------------------------------

29     SYS

38     SYS

39     SYS                   id=sunshine

3.视图v$process

在v$session可以查到哪个SID在哪个通道上工作,在通过和v$process关联查到SPID等进程信息,可以监控进程,命令如下,

SQL> select sid,spid,client_info from v$process  p ,v$session s

2  where p.addr=s.paddr

3  and client_info like '%id=sun%';

SID      SPID                     CLIENT_INFO

---------- ------------------------ -----------------------------------

39         5081                     id=sunshine

最后,当RMAN异常中断时,不会记录在控制文件上或者数据库中,但是磁盘上会有文件,要去删除它。

相关文章:Oracle—RMAN备份(一)    Oracle—RMAN备份(二)

Oracle—RMAN备份(三)的更多相关文章

  1. Oracle—RMAN备份(一)

    一.RMAN备份相关概念 1.RMAN备份中表空间不需要处于backup模式下,它备份数据文件,归档日志文件,控制文件,spfile和备份集片,但不备份联机重做日志文件,临时文件和口令文件. 2.备份 ...

  2. Oracle—RMAN备份(二)

    在Oracle  RMAN备份(一)中,对各种文件在RMAN中备份进行了说明, 一.备份集的复制 在RMAN 备份中,可以备份其自己的备份,即备份一个文件放在多个目录下,oralce支持最多备份四个. ...

  3. ORACLE RMAN备份及还原 RMAN能够进行增量备份:数据库,表空间,数据文件

    ORACLE RMAN备份及还原   RMAN能够进行增量备份:数据库.表空间.数据文件 仅仅有使用过的block能够被备份成backup set 表空间与数据文件相应关系:dba_data_file ...

  4. Oracle RMAN 备份一例

    Oracle RMAN备份一例: Solaris 10 + Oracle 11.2.0.3 Shell:csh,安装有bash,脚本调用bash 备份策略:周日0级备份,周一~周六1级备份,每6小时备 ...

  5. ORACLE RMAN备份--差异增量与累积增量的策略实例图

    转自原文 ORACLE RMAN备份--差异增量与累积增量的策略实例图

  6. Oracle RMAN备份策略

    建立增量备份:如果数据库运行于不归档模式下,只能在数据库干净关闭的情况下 ( 以 normal .immediate . transactional 方式关闭 ) 才能进行一致性的增量备份,如果数据库 ...

  7. ORACLE RMAN备份及还原(转)

    RMAN可以进行增量备份:数据库,表空间,数据文件 只有使用过的block可以被备份成backup set 表空间与数据文件对应关系:dba_data_files / v$datafile_heade ...

  8. Oracle RMAN备份恢复指导书

    目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库. ...

  9. Oracle RMAN备份与还原注意事项

    1 备份文件管理 如果要删除之前的备份,不要手动去目录下删除,应该在rman命令模式下使用删除命令,否则虽然在磁盘上把物理备份文件删除了,但是使用备份查看命令会一直看到已经删除的备份文件 list b ...

随机推荐

  1. linux下CDROM挂载

    在VM-->removableDevice-->CD DVD-->加载iso镜像文件: [root@rusky2 mnt]# mount /dev/cdrom /mnt/cdrom ...

  2. 华硕笔记本怎么设置u盘启动(两种方法)

    华硕笔记本怎么设置u盘启动(两种方法) 华硕笔记本怎么设置u盘启动.我想用U盘安装系统但是 我不知道如何设置U盘启动,那么该如何设置呢?下面和大家分享一下我的经验,希望能够帮到大家.如果你的系统是预装 ...

  3. java 判断对象是否是某个类的类型方法

    class Do1 { public static void main(String[] args) { AA a=new CC(); if(a instanceof CC) { CC b=(CC)a ...

  4. grunt之dev-pro环境切换

    在项目开发过程中和发布阶段需要在开发环境(dev)和生产环境(pro)之间切换,静态文件引用的切换等等. 使用grunt要如何解决上述问题,这里提供一个案列供参考. 用到的grunt插件: 文件合并: ...

  5. java开发软件的安装

    jdk+eclipse+svn+maven+mysql+tomcat7.0+sublime安装包和jar插件 配置管理工具-SVN http://download.csdn.net/detail/u0 ...

  6. 你不了解PHP的10件事情

    看到有人翻译的<10 things you (probably) didn’t know about PHP>,发现在此次之前2.8两条并不知道,1.3虽然熟知但是去没有实际应用. 由于阅 ...

  7. 让Mac OS X中的PHP支持GD

    GD库已经是近乎于是现在主流PHP程序的标配了,所以也必须让Mac OS X中的PHP支持GD.在网上搜索了好多,最终按照这个方式成功实现,如何让Mac OS X支持PHP,请查看<让PHP跑在 ...

  8. Openjudge 百练第4109题

    在OpenJudge看到一个题目(#4109),题目描述如下: 小明和小红去参加party.会场中总共有n个人,这些人中有的是朋友关系,有的则相互不认识.朋友关系是相互的,即如果A是B的朋友,那么B也 ...

  9. C语言基础学习基本数据类型-变量的命名

    变量的命名 变量命名规则是为了增强代码的可读性和容易维护性.以下为C语言必须遵守的变量命名规则: 1. 变量名只能是字母(A-Z,a-z),数字(0-9)或者下划线(_)组成. 2. 变量名第一个字母 ...

  10. /dev/socket/vold exploit 本地提权漏洞

    EXPLOIT "0 asec create ../../../../../../../../xxxxx/xx/xx/xx 1 ext4 98235792350852308254872354 ...