[20151117]关于增量备份.txt

[20151117]关于增量备份.txt

SCOTT@book> @ &r/ver1

PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

RMAN> backup incremental level 0 datafile 5  format '/home/oracle/backup/inc0_example_%u.dbf' TAG='INC0';
Starting backup at 2015-11-17 10:47:42
using channel ORA_DISK_1
channel ORA_DISK_1: starting incremental level 0 datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/mnt/ramdisk/book/example01.dbf
channel ORA_DISK_1: starting piece 1 at 2015-11-17 10:47:42
channel ORA_DISK_1: finished piece 1 at 2015-11-17 10:47:43
piece handle=/home/oracle/backup/inc0_example_40qmfume.dbf tag=INC0 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 2015-11-17 10:47:43

--如果我改名删除这个增量备份呢?
$ mv inc0_example_40qmfume.dbf inc0_example_40qmfume.dbf_ORG

RMAN> backup incremental level 1 datafile 5  format '/home/oracle/backup/inc1_example_%u.dbf' TAG='INC1';

Starting backup at 2015-11-17 10:52:01
using channel ORA_DISK_1
channel ORA_DISK_1: starting incremental level 1 datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/mnt/ramdisk/book/example01.dbf
channel ORA_DISK_1: starting piece 1 at 2015-11-17 10:52:01
channel ORA_DISK_1: finished piece 1 at 2015-11-17 10:52:02
piece handle=/home/oracle/backup/inc1_example_43qmfuuh.dbf tag=INC1 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 2015-11-17 10:52:02

--增量1级备份成功。

RMAN> list backupset ;
List of Backup Sets
===================
BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
120     Incr 0  68.84M     DISK        00:00:00     2015-11-17 10:47:42
        BP Key: 120   Status: AVAILABLE  Compressed: NO  Tag: INC0
        Piece Name: /home/oracle/backup/inc0_example_40qmfume.dbf
  List of Datafiles in backup set 120
  File LV Type Ckp SCN    Ckp Time            Name
  ---- -- ---- ---------- ------------------- ----
  5    0  Incr 1774661    2015-11-16 16:16:33 /mnt/ramdisk/book/example01.dbf

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
122     Incr 1  32.00K     DISK        00:00:00     2015-11-17 10:52:01
        BP Key: 122   Status: AVAILABLE  Compressed: NO  Tag: INC1
        Piece Name: /home/oracle/backup/inc1_example_43qmfuuh.dbf
  List of Datafiles in backup set 122
  File LV Type Ckp SCN    Ckp Time            Name
  ---- -- ---- ---------- ------------------- ----
  5    1  Incr 1812018    2015-11-17 10:52:01 /mnt/ramdisk/book/example01.dbf

--说明备份并不是读取增量备份文件来比较的。而是通过控制文件记录的信息来确定从那个scn开始。

SELECT recid
      ,file#
      ,incremental_level
      ,incremental_change#
      ,checkpoint_change#
      ,datafile_blocks
      ,blocks_read
  FROM V$BACKUP_DATAFILE;

     RECID      FILE# INCREMENTAL_LEVEL INCREMENTAL_CHANGE# CHECKPOINT_CHANGE# DATAFILE_BLOCKS BLOCKS_READ
---------- ---------- ----------------- ------------------- ------------------ --------------- -----------
       124          5                 0                   0            1774661           42240       39872
       126          5                 1             1774661            1812018           42240       42240

--可以从BLOCKS_READ看出,0级备份仅仅读取使用的块,而1级备份读取全部的数据块。要想充分使用增量备份最好打开块跟踪。

3.打开块跟踪文件:

SCOTT@book> alter database enable block change tracking using file '/home/oracle/backup/change_tracking.dbf';
Database altered.

RMAN> backup incremental level 1 datafile 5  format '/home/oracle/backup/inc1_example_%u.dbf' TAG='INC1';
Starting backup at 2015-11-17 11:05:02
using channel ORA_DISK_1
channel ORA_DISK_1: starting incremental level 1 datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/mnt/ramdisk/book/example01.dbf
channel ORA_DISK_1: starting piece 1 at 2015-11-17 11:05:02
channel ORA_DISK_1: finished piece 1 at 2015-11-17 11:05:03
piece handle=/home/oracle/backup/inc1_example_44qmfvmu.dbf tag=INC1 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 2015-11-17 11:05:03

SELECT recid
      ,file#
      ,incremental_level
      ,incremental_change#
      ,checkpoint_change#
      ,datafile_blocks
      ,blocks_read
  FROM V$BACKUP_DATAFILE

     RECID      FILE# INCREMENTAL_LEVEL INCREMENTAL_CHANGE# CHECKPOINT_CHANGE# DATAFILE_BLOCKS BLOCKS_READ
---------- ---------- ----------------- ------------------- ------------------ --------------- -----------
       124          5                 0                   0            1774661           42240       39872
       126          5                 1             1774661            1812018           42240       42240
       127          5                 1             1812018            1812564           42240       42240
--再只执行1次增量备份就可以看出效果了。

RMAN> backup incremental level 1 datafile 5  format '/home/oracle/backup/inc1_example_%u.dbf' TAG='INC1';

Starting backup at 2015-11-17 11:06:04
using channel ORA_DISK_1
channel ORA_DISK_1: starting incremental level 1 datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/mnt/ramdisk/book/example01.dbf
channel ORA_DISK_1: starting piece 1 at 2015-11-17 11:06:05
channel ORA_DISK_1: finished piece 1 at 2015-11-17 11:06:06
piece handle=/home/oracle/backup/inc1_example_45qmfvot.dbf tag=INC1 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 2015-11-17 11:06:06

RMAN>

SCOTT@book> /
     RECID      FILE# INCREMENTAL_LEVEL INCREMENTAL_CHANGE# CHECKPOINT_CHANGE# DATAFILE_BLOCKS BLOCKS_READ
---------- ---------- ----------------- ------------------- ------------------ --------------- -----------
       124          5                 0                   0            1774661           42240       39872
       126          5                 1             1774661            1812018           42240       42240
       127          5                 1             1812018            1812564           42240       42240
       128          5                 1             1812564            1812604           42240           1

--最后一次读取量明显减少,这样可以加快1级备份的速度。

SCOTT@book> alter database disable block change tracking ;
Database altered.

$ ll /home/oracle/backup/change_tracking.dbf
ls: /home/oracle/backup/change_tracking.dbf: No such file or directory

总结:
1.使用增量备份模式,最好打开块跟踪模式。加快1级备份以及累积备份的速度。
2.注意检查0级备份是否完好,如果删除或者损坏,后果比较严重。

时间: 2024-11-10 13:33:47

[20151117]关于增量备份.txt的相关文章

[20151218]数据文件的unrecover与增量备份

[20151218]数据文件的unrecover与增量备份.txt --前一阵子我给别人演示truncate的不完全恢复,结果非常难堪的遇到无法恢复的情况. --问题是我建立的数据库按照这个链接建立的. http://blog.itpub.net/267265/viewspace-1845062/ --而这样建立的数据库表空间example的属性NOLOGGING. CREATE TABLESPACE EXAMPLE DATAFILE   '/mnt/ramdisk/book/example01

[20151116]rman 全备份以及增量0级备份.txt

[20151116]rman 全备份以及增量0级备份.txt --前一阵子写了一篇将as copy作为增量0级备份的帖子,今天对比全备份以及增量0级备份的不同. 1.测试环境: SCOTT@book> @ &r/ver1 PORT_STRING                    VERSION        BANNER ------------------------------ -------------- --------------------------------------

【MySql】innobackupex 增量备份和恢复

   innobackupex 是使用pl封装了xtrabackup之后的工具,在使用的时候会调用xtrabackup. 1 创建环境 -bash-3.2$ mysql mysql> use test;                                Database changed mysql> select count(1) from t1;                           +----------+ | count(1) | +----------+ |

批处理向FTP上传具有指定属性的文件(增量备份)_DOS/BAT

怎样实现对一个目录里的几个文件自动上传FTP时只上传有归档属性的文件,然后FTP上传成功后自动清除(本机)刚上传文件的归档属性,批处理可以实现到吗?有点类似于对文件增量备份的功能吧 @echo off rem 指定FTP用户名 set ftpUser=FTPUSERNAME rem 指定FTP密码 set ftpPass=FTPPASSWORD rem 指定FTP服务器地址 set ftpIP=192.168.0.2 设置待上传的本地文件夹目录 set SrcFolder=C:/test dir

mysql数据库完美增量备份脚本

是否因为mysql太大,来回备份浪费资源带宽而发愁,如果想解决这个麻烦就需要增量备份,下面是张小三资源网修改的一份mysql的增量备份脚本,我已做了相关注释,大家自行修改下就可以用了. vi /etc/my.cnf开启日志及定期清理日志 log-bin=mysql-bin binlog_format=mixed //二进制日志自动删除的天数.默认值为0,表示"没有自动删除" expire_logs_days = 5 全备份脚本: #!/bin/bash # Name:qbk全备份脚本

Oracle增量备份和快速备份(块改变跟踪Block Change Tracking)

Oracle增量备份和快速备份(块改变跟踪Block Change Tracking) 下面小麦苗给出全库备份的脚本: 点击(此处)折叠或打开 [oracle@rhel6lhr ~]$ crontab -l 2 12 * * 1 /home/oracle/lhr/rman/rman_backup_full.sh [oracle@rhel6lhr ~]$ more /home/oracle/lhr/rman/rman_backup_full.sh export ORACLE_SID=orclasm

mysql 利用binlog增量备份,还原实例

mysql 利用binlog增量备份,还原实例 张映 发表于 2010-09-29 分类目录: mysql 一,什么是增量备份 增量备份,就是将新增加的数据进行备份.假如你一个数据库,有10G的数据,每天会增加10M的数据,数据库每天都要备份一次,这么多数据是不是都要备份呢?还是只要备份增加的数据呢,很显然,我只要备份增加的数据.这样减少服务器的负担. 二,启用binlog vi my.cnf log-bin=/var/lib/MySQL/mysql-bin.log,如果是这样的话log-bin

MYSQL备份:启用二进制日志功能的MYSQL增量备份

小量的数据库我们可以每天进行完整备份,因为这也用不了多少时间,但当数据库很大时,我们就不太可能每天进行一次完整备份了,而且改成每周一次完整备份,每天一次增量备份类似这样的备份策略.增量备份的原理就是使用了mysql的二进制日志,所以我们必须启用二进制日志功能. 一.增量备份 1.比如我们在星期天下午11点做一次完整备份: mysqldump --single-transaction --flush-logs --master-data=2 --all-databases > fullbackup

MYSQL数据库自动本地/异地双备份/MYSQL增量备份

构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)架构图 继续介绍Linux服务器文件备份,数据库备份,数据安全存储相关的电子商务系统架构.针对安全性有多种多样的解决方案,其中数据备份是重中之重的首要工作. 电子商务网站更加注重考虑数据安全,数据备份方案,包括本地备份.异地备份架构.其中Linux服务器的备份方案非常多,本文介绍一个大众化适用的解决方案,通过编写Shell脚本来完成自动备份.本架构包括备份网站文件.数据库,自动本地备份并FTP上传备份脚本,完成相应本地备份.异地备份