温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

RMAN深入解析之--备份数据块

发布时间:2020-10-13 09:08:46 来源:网络 阅读:820 作者:客居天涯 栏目:关系型数据库

RMAN深入解析之--备份数据块


  对于RMAN的备份是基于数据块的备份,数据块备份的工作原理是:RMAN基于备份算法规则来编译要备份的文件列表。基于信道数和同时备份的文件数,RMAN在Oracle共享内存段中创建一些内存缓冲区。一般是在PGA内,不过有时内存缓冲区会被推入SGA.信道服务器进程随后开始读取数据文件,并在RMAN缓冲区中填充这些数据块。一个缓冲区被填满时,输入缓冲区中的数据块会被推入输出缓冲区。数据文件中的每个数据块都会发生这种内存对内存的写操作(memory-to-memory write),则该数据块会保留在输出缓冲区直至缓冲区被填满。一旦输出缓冲区被填满,输出缓冲区中的内容就会被推至备份位置(磁盘或磁带)

    一旦所有文件已通过内存缓冲区过滤,就完成了备份片,同时RMAN会在目标数据库控制文件中写入备份片的完成时间和备份片的名称。

   块备份优点:

   每个数据块从磁盘读入内存时都会发生内存到内存的写操作,在这个操作期间会检查数据块的损坏。

    空块压缩:

   RMAN访问数据块时可以选择空块压缩(null block compression),删除从来没有使用过的数据块(header is 0),并在执行内存对内存的写操作是丢弃这些数据块。因此,我们只需要备份使用过的数据块。

    未使用的块压缩:

   未初始化的块不会备份,在10.2.0.3版本后,即使是使用过的块,如果是空块,也不会被备份。

    未使用的块压缩可以自动使用,但需要满足以下条件:

  •  要求备份时完全备份或0级备份

  •  备份是磁盘备份(或是Oracle安全备份)

  •  COMPATIBLE的初始化参数设置为10.2或是更高的值 

  •  待备份的数据库没有可靠的还原点 

  •  数据文件是本地管理

    块级备份的性能:  

       RMAN备份期间不需要启动热备份模式(begin backup)。RMAN对数据块的访问允许RMAN与写“脏”缓冲区的DBWR进程协调,并且在将这个数据块读入内存以前它可以等待直至数据块达到一致。因此,数据块不会转储为重做,并且备份中的数据块总是一致的。

    RMAN的块跟踪:

  • Block change tracking记录自从上一次备份以来数据块的变化,并把这些信息记录在跟踪文件中。RMAN使用这个文件判断增量备份中需要备份的变更数据。这极大的促进了备份性能,RMAN可以不再扫描整个文件以查找变更数据。为此Oracle引入了一个新的后台进程,CTWR,其全称为Change Tracking Writer,用于记录变化的块并将变化写入相应的日志文件中。  
    通过位图跟踪两次备份间变化的数据块;
    每次备份前进行位图切换;
    开发增量备份策略时,要考虑到8个位图的限制;一般增量备份周期为一个礼拜
    在RAC环境中,change tracking file需要放在共享存储上;
    Change tracking file的大小和数据库的大小和enabled的redo thread的个数成正比;
    Change tracking file的大小和数据更新的频率无关;
    开启块跟踪功能对数据库的性能有一点影响。
      
    [oracle@aix211 ~]$sqlplus '/as sysdba'
    SQL*Plus: Release 10.2.0.1.0 - Production on Mon May 19 17:06:05 2014
    Copyright (c) 1982, 2005, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
    With the Partitioning, OLAP and Data Mining options
    SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '/home/oracle/block.trc';
    Database altered.
    SQL> SELECT filename from V$BLOCK_CHANGE_TRACKING;
    FILENAME
    --------------------------------------------------------------------------------
    /home/oracle/block.trc
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI