当前位置: 首页 > 数据库 > oracle >

RMAN常用备份命令

一、RMAN常规备份

 
只备份快速恢复区中的文件:
BACKUP RECOVERY AREA
 
备份所有恢复文件
BACKUP RECOVERY FILES
 
动态性能视图
v$BACKUP_SET:创建的备份集
V$BACKUP_PIECE:存在的备份片段
V$DATAFILE_COPY:磁盘上的数据文件副本
V$BACKUP_FILES:有关创建备份时所创建的所有文件的信息

1.参数文件spfile的备份

backup spfile;
backup spfile format '/u01/spfilebak.bmp';
backup spfile format '+db/spfile.ora';
backup as copy spfile; #类似操作系统cp拷贝
backup as copy spfile format '.....';
 
控制文件自动备份打开,也会自动备份spfile
backup database 和 backup full database 这两个语句也会备份spfile
 
验证spfile文件有没有备份:
list backup of spfile;
list copy of spfile;  #貌似不支持
 
 

2. 控制文件的备份

控制文件有多个,但ckpt实际只写一个控制文件,就是当前的控制文件
 
backup current controlfile;
backup current controlfile format '......';
backup as copy current controlfile;
 
控制文件自动备份打开,也会自动备份控制文件
backup database 和 backup full database,同上
 
查看验证:
list backup of controlfile;
list copy of controlfile;
 
 

3. 数据文件的备份

表空间备份:
backup tablespace users,example;
backup tablespace system;
 
数据文件备份
backup datafile 2
backup datafile 3,4 '/u01/oracle/oradata/...';
backup as copy datafile 4;
backup as copy tablespace users;
 
所有的数据文件
backup [full] database # 这种操作会包括所有的datafile、current controlfile、spfile
backup database format '...%U....';
 

 

4. 归档日志的备份

backup archivelog all; #这个操作,归档日志在备份路径和归档路径均有一份
backup archivelog all delete input; #归档日志备份到备份路径后,把已经备份的归档日志从归档路径删除
 
 
5.数据库所有的数据文件、控制文件、参数文件、归档日志备份
backup database plus archivelog;
backup database plus archivelog delete input;
 
 

二、 增量备份

 
cumulative(累积的) --> 累积增量,备份上次增量级别-1后级别以来变化的数据
incremental(增加的)--> 差异增量,备份上次增量级别以来变化的数据
 
backup incremental level 0|2|3|4  database|datafile <> tablespace <> format '';
 
0级代表全备,必须存在,才能差异或者累积
 
backup cumulative incremental level 0|2|3|4  database|datafile <> tablespace <> format '';
 
backup incremental level 0|2|3|4 cumulative database|datafile <> tablespace <> format '';
 
 
format 的替换变量,注意大小写!
 
1.     %d  --数据库的db_name
 
2.     %n  --数据库的8位长度的db_name,不足部分用“x”后面填充
 
3.     %N  --数据库表空间的name
 
4.     %I   --数据库的dbid
 
5.     %T  --年月日(YYYYMMDD) == %Y%M%D
 
6.     %t   --9位字符的timestamp
 
7.     %s   --备份集序号
 
8.     %p   --备份片序号
 
9.     %c   --备份片的多个copy的序号
 
10. %e   --archived redo file 的序列号,只能用在archived redo 上
 
11. %f   --datafile filenmuber,只能用在备份datafile、tablespace上,否则没有意义
 
12. %F  --复合format == c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII为dbid,YYYYMMDD为年月日,QQ为十六进制的备份片的多个copy的序号(00-ff)。
 
13. %u  --8位字母唯一串
 
14. %U  --复合format == 
 
backupset:%u_%p_%c
copy of datafile:data-D-%d_id-%I_TS-%N_FNO-%f_%u
copy of archived log:arch-D_%d-id-%I_S-%e_T-%h_A-%a_%u
copy of controlfile:cf-D_%d-id-%I_%u
分类: Oracle
 
------分隔线----------------------------
  • 收藏
  • 挑错
  • 推荐
  • 打印