当前位置:  数据库>oracle

RMAN的改变跟踪

    来源: 互联网  发布时间:2017-06-14

    本文导语: RMAN的改变跟踪功能通过在改变跟踪文件中记录每一个数据文件发生改变的数据块来提高增量备份的性能。如果改变跟踪被启用,RMAN使用改变跟踪文件来标识自上次增量备份以来发生改变的数据块,这样就能避免扫描每个数据文...

RMAN的改变跟踪功能通过在改变跟踪文件中记录每一个数据文件发生改变的数据块来提高增量备份的性能。如果改变跟踪被启用,RMAN使用改变跟踪文件来标识自上次增量备份以来发生改变的数据块,这样就能避免扫描每个数据文件的所有数据块。

在启用改变跟踪后,第一次level 0级的增量备份仍然会扫描每个数据文件的所有数据块,这时改变跟踪文件不能反应数据块的状态。后续的增量备份将使用level 0级的增量备份作为父备份集这样就可以利用改变跟踪文件来进行增量备份。

使用改变跟踪不会改变执行增量备份的命令,改变跟踪本身在设置后通常需要较少的维护。

改变跟踪默认情况下是禁用的,因为它在数据库的正常操作期间会有一些小的性能开销。然而,为了在备份期间对数据文件执行完全扫描,且在两次备份期间只有少量数据块发生改变时,使用改变跟踪就是很有用的。如果你的备份策略使用增量备份,那么应该启用改变跟踪。

一旦对整个数据库创建了改变跟踪文件,默认情况下改变跟踪文件所生成的目录是由
db_create_file_dest参数来决定的。也可以在启用改变跟踪时指定改变跟踪的文件名和存储目录。

注意:在RAC环境下,为了让所有的节点都能使用改变跟踪文件应该将改变跟踪文件存储在共享存储中

Oracle保存足够的改变跟踪文件能让增量备份使用最近8个增量备份作为它的父备份。

虽然RMAN不支持对改变跟踪文件本身的备份和恢复,如果整修数据库或部分需要还原和恢复,那么恢复对改变跟踪没有影响。在还原和恢复之后,改变跟踪文件会被清除,并再次开始记录数据块的改变。在任何恢复之后下一次的增量备份都能够使用改变跟踪的数据。

启用或禁用块改变跟踪
 存储块改变跟踪文件的目录是由db_create_file_dest参数来设置的,下面的语句用来启用块改变跟踪:
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING;


还可以在启用块改变跟踪时指定块改变跟踪文件创建的目录
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING
USING FILE '/mydir/rman_change_track.f' REUSE;


REUSE选项告诉Oracle会覆盖已经存在的块跟踪文件

为了禁用块改变跟踪:
SQL> ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;


如果块改变跟踪文件存储在数据库区域,当禁用改变跟踪时会删除。
SQL> alter database enable block change tracking using file '/u01/app/oracle/rman_change_trace.f' reuse;

Database altered.


检查是否生成了改变跟踪文件
[root@oracle11g oracle]# ls -lrt
total 11632
drwxr-xr-x  3 oracle oinstall    4096 Sep  5 08:47 10.2.0
drwxrwxr-x  3 oracle oinstall    4096 Sep  5 09:12 oradata
drwxr-x---  3 oracle oinstall    4096 Sep  5 09:12 admin
drwxrwxr-x  3 oracle oinstall    4096 Sep  5 09:13 flash_recovery_area
-rw-r--r--  1 oracle oinstall  226495 Nov 18 10:55 utlu112i_8.sql
-rw-r--r--  1 oracle oinstall    10373 Nov 18 11:02 upgrade_info.log
drwxr-xr-x  3 root  root        4096 Nov 18 21:00 11.2.0
drwxrwx---  7 oracle oinstall    4096 Nov 18 21:37 oraInventory
drwxrwxr-x 11 oracle oinstall    4096 Nov 18 21:37 diag
drwxr-xr-x  2 oracle oinstall    4096 Nov 18 21:39 checkpoints
drwxr-x---  5 oracle oinstall    4096 Nov 19 18:55 cfgtoollogs
-rw-r--r--  1 oracle oinstall    3261 Nov 23 21:24 upchk.log
-rw-r--r--  1 oracle oinstall    2237 Nov 26 11:55 downgrade.log
-rw-r-----  1 oracle oinstall 11600384 Jan 26 21:32 rman_change_trace.f


禁用块改变跟踪:
SQL> alter database disable block change tracking;

Database altered.


检查是否删除了生成的改变跟踪文件
[root@oracle11g oracle]# ls -lrt
total 284
drwxr-xr-x  3 oracle oinstall  4096 Sep  5 08:47 10.2.0
drwxrwxr-x  3 oracle oinstall  4096 Sep  5 09:12 oradata
drwxr-x---  3 oracle oinstall  4096 Sep  5 09:12 admin
drwxrwxr-x  3 oracle oinstall  4096 Sep  5 09:13 flash_recovery_area
-rw-r--r--  1 oracle oinstall 226495 Nov 18 10:55 utlu112i_8.sql
-rw-r--r--  1 oracle oinstall  10373 Nov 18 11:02 upgrade_info.log
drwxr-xr-x  3 root  root      4096 Nov 18 21:00 11.2.0
drwxrwx---  7 oracle oinstall  4096 Nov 18 21:37 oraInventory
drwxrwxr-x 11 oracle oinstall  4096 Nov 18 21:37 diag
drwxr-xr-x  2 oracle oinstall  4096 Nov 18 21:39 checkpoints
drwxr-x---  5 oracle oinstall  4096 Nov 19 18:55 cfgtoollogs
-rw-r--r--  1 oracle oinstall  3261 Nov 23 21:24 upchk.log
-rw-r--r--  1 oracle oinstall  2237 Nov 26 11:55 downgrade.log


SQL> select filename from v$block_change_tracking;

FILENAME
 --------------------------------------------------------------------------------
 /u01/app/oracle/rman_change_trace.f

2.关闭数据库.
SQL> shutdown immediate

Database closed.
Database dismounted.
ORACLE instance shut down.


3.使用操作系统命令将块改变跟踪文件移动到新的位置
[root@oracle11g oracle]# mv rman_change_trace.f rman_change_trace_new.f


4.mount数据库,更改块改变跟踪文件
SQL> startup mount
ORACLE instance started.

Total System Global Area  327155712 bytes
Fixed Size                  1273516 bytes
Variable Size            138412372 bytes
Database Buffers          184549376 bytes
Redo Buffers                2920448 bytes
Database mounted.
SQL> alter database rename file '/u01/app/oracle/rman_change_trace.f' to '/u01/app/oracle/rman_change_trace_new.f';

Database altered.


5.打开数据库
SQL> alter database open;

Database altered.

SQL> alter database disable block change tracking;

Database altered.

[root@oracle11g oracle]# ls -lrt
total 284
drwxr-xr-x  3 oracle oinstall  4096 Sep  5 08:47 10.2.0
drwxrwxr-x  3 oracle oinstall  4096 Sep  5 09:12 oradata
drwxr-x---  3 oracle oinstall  4096 Sep  5 09:12 admin
drwxrwxr-x  3 oracle oinstall  4096 Sep  5 09:13 flash_recovery_area
-rw-r--r--  1 oracle oinstall 226495 Nov 18 10:55 utlu112i_8.sql
-rw-r--r--  1 oracle oinstall  10373 Nov 18 11:02 upgrade_info.log
drwxr-xr-x  3 root  root      4096 Nov 18 21:00 11.2.0
drwxrwx---  7 oracle oinstall  4096 Nov 18 21:37 oraInventory
drwxrwxr-x 11 oracle oinstall  4096 Nov 18 21:37 diag
drwxr-xr-x  2 oracle oinstall  4096 Nov 18 21:39 checkpoints
drwxr-x---  5 oracle oinstall  4096 Nov 19 18:55 cfgtoollogs
-rw-r--r--  1 oracle oinstall  3261 Nov 23 21:24 upchk.log
-rw-r--r--  1 oracle oinstall  2237 Nov 26 11:55 downgrade.log


如果不能关闭数据库,那么你必须禁用改变跟踪,再在重新启用时指定新的目录。例如:
ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;
ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE 'new_location';


如果你选择使用这种方法,将会丢失改变跟踪文件中的内容。直到你下次完成level 0级的增量备份之前,RMAN将不得不扫描整个文件

评估改变跟踪文件的大小
 改变跟踪文件的大小与数据库的大小和重做日志线程数成正比。它的大小不与数据库的频繁更新相关。通常来说块改变跟踪所需要的空间大小是将被跟踪的数据块大小的1/30000。注意,然而下面的两种原因可能会让改变跟踪文件比评估的大小大很多:
1.为了避免随着数据库的增长而要给改变跟踪文件分配空间所产生的开销,改变跟踪文件一开始创建时就是10M,并且以10M的大小来增加。因此对于任何大小接近300G的数据库来说,改变跟踪文件的大小不小于10M,对于大小接近600G的数据库来说,改变跟踪文件的大小不小于20M,依此类推。

2.对于每个数据文件,不管改变跟踪文件有多大都会在改变跟踪文件中将分配320K的空间。因此,如果有大量的小数据文件,改变跟踪文件将会比包含同样数据量的少量的大数据文件对应的改变跟踪文件大

--------------------------------------推荐阅读 --------------------------------------

RMAN 配置归档日志删除策略

Oracle基础教程之通过RMAN复制数据库

RMAN备份策略制定参考内容

RMAN备份学习笔记

Oracle数据库备份加密 RMAN加密

--------------------------------------分割线 --------------------------------------


    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • rman备份脚本和rman增量备份脚本分享
  • Oracle数据库备份和恢复工具 RMan
  • IP地址数字互转 iis7站长之家
  • rman配置及rman常用命令操作
  • win平台oracle rman备份和删除dg备库归档日志脚本
  • linux自动运行rman增量备份脚本
  • 9i下RMAN的备份及恢复步骤
  • Oracle相关:Rman Crosscheck删除失效归档
  • ORACLE 数据库RMAN备份恢复
  • rman恢复方案和oracle异机恢复
  • Oracle RMAN快速入门指南


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,