所谓增量备份,顾名思义即是每次备份操作那些发生了“变化”的数据块。在RMAN增量备份中有两种:Differential(差异备份)和Cumulative(增量备份)方式。由于需求这里用到的备份方式则是差异增量备份。
差异增量备份概念:
是备份低级别或者同级别备份以来的所有数据块,也就是要备份前期备份以来的差异数据块。在实际的备份中必须存在基础备份也就是0级备份,若没有0级备份则没有比较的对象文件,从而无法实现增量备份,而0级备份便是数据库的全备份。(在Oracle10g之前的版本中,增量备份可以有n多个级别,从0级、1级…….这样的顺序直到n级,n为小于等于4的整数。而10g之后包括10g,Oracle的官方文档明确指出增量备份只有0和1两种级别,设置太多的级别没有太大的意义,不过在实际执行增量操作时,仍能能够指定多个级别,最大能够支持4级的增量备份)
备份原则:
(1) 若前面同时有n-1级别和同级别,则备份相同级别以来变化的数据;
(2) 若前面没有同级别的备份,则备份n-x级别以来变化的数据;
总的一点,差异增量触发的条件是:小于等于当前级别;下面是周备份差异增量备份策略:
Rman备份基本命令:
登录Rman:
win+r 输入rman target/,或者先输入cmd,窗口打开后再输入rman target/(建议用后者)
登录进入的方式:
Rman targetsystem/newoa
Rman targetsystem/newoa nocatalog(控制文件方式)
Rman targetsystem/newoa catalog(恢复目录方式)
数据库备份:
Backup databaseformat=’ D:/backup/%d_%T_%s’;(format备份到自己想要备份到的地方)
备份表空间:
Backup tablespaceemp;
备份数据文件:
Backup datafileformat’ D:/backup/%d_%T_%s’;
备份归档日志:
Backup archivelogall delete input format ‘D:/backup/%d_%T_%s.dbf’;
备份控制文件:
Backup currentcontrolfile format ‘D:/backup/%d_%T_%s’;(current当前的)
备份spfile(参数文件):
Backup spfileformat=’ D:/backup/%d_%T_%s’;
0级增量备份:(level 后是几就代表几级)
backup incrementallevel 0 database format 'D:/backup/%d_%T_%s';
1级增量备份:
backup incrementallevel 1 database format 'D:/backup/%d_%T_%s';
---rman 维护命令:(登录rman后进行的操作)
listbackup --列出全部的备份信息list backup ofdatabase --列出数据库备份list backup of tablespace emp --列出指定的表空间备份list backup of datafile5 --列出指定的数据文件备份 list backup ofcontrolfile --列出控制文件备份list backup ofspfile --列出spfile备份 list archivelogall --列出归档日志list backup of archivelogall --列出归档日志的备份
list backup of databasesummary --列出可用的备份list backup of tablespace empsummary --关于表空间的备份list backup byfile --按文件类型列出备份list expired backup of archivelog all summary --失效的备份
reportobsolete --查看过期的deleteobsolete --删除过期的
list recoverable backup ofdatabase --列出有效的备份list expiredbackup --列出失效的备份
list expired backup of archivelogall --列出失效的归档日志备份
在开始操作前一定要将数据库设为归档模式,否则无法实现备份操作
首先切换到服务器归档模式,如果已经是归档模式可以跳过此步骤:
(1) Win键+r打开cmd , sqlplus /nolog (启动sqlplus)(2) SQL>conn system/newoa as sysdba;(以DBA身份连接数据库)(3) SQL>archivelog list;(查看是否处于归档模式)
(4) shutdownimmediate;(立即关闭数据库)
(5) startupmount;(启动实例并加载数据库,但不打开)
(6) alterdatabase archivelog;(更改数据库为归档模式)
(7) 重复步骤(3)若出现下图,表示数据库已切换归档模式
(8) alterdatabase open;(打开数据库)
开始备份,新建四个文件分别是:rman0.bat,rman0.txt,rman1.bat,rman1.txt(文件的名字随便命名只要区分备份级别即可)
Rman0.bat脚本内容:
rman target system/newoa nocatalogCMDFILE 'd:/Rman0.txt' LOG 'd:/backup/rmanbackup_