作者:IT邦德
中国DBA联盟(ACDU)成员,目前从事DBA及程序编程(Web\java\Python)工作,主要服务于生产制造
现拥有 Oracle 11g OCP/OCM、Mysql、Oceanbase(OBCA)认证
分布式TBase\TDSQL数据库、国产达梦数据库以及红帽子认证
从业8年DBA工作,在数据库领域有丰富的经验
擅长Oracle数据库运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
微信;jem_db
QQ交流群:168797397
1.RMAN常用命令大全
RMAN> list backup;
RMAN> list backup of tablespace users;
RMAN> list backup of datafile 2;
RMAN> list backup of controlfile;
RMAN> list backup of archivelog all;
RMAN> list backup of archivelog until time ='sysdate -1';
RMAN> list backupset 56;
RMAN> list copy; ( 包括归档日志)
RMAN> list datafilecopy all;
RMAN> list copy of tablespace users;
RMAN> list copy of datafile 1;
RMAN> list datafilecopy 67;
RMAN> list copy of controlfile;
RMAN> list expired backup;
RMAN> list archivelog all;
2.备份
备份全库:
①RMAN> backup database format='/u01/backup/rman/prod_%s.bak' filesperset 3;
②RMAN> backup database plus archivelog delete input;
说明: 备份所有数据文件及控制文件、spfile 文件与所有归档日志,并删除旧的归档日志,当delete input 后,控制文件相关信息(v$archived_log )也会被更新,archivelog 物理日志也被删除。
filesperset是每个备份集中包含的最大文件个数
③RMAN> backup database format '/u01/backup/rman/%U.bak' plus archivelog delete input
skip inaccessible;
说明: archivelog 的备份是根据控制文件中(v$archived_log )中的内容导航的,如果控制文件中记录了而实际归档中又不存在,则会报错,skip inaccessible 的含义是跳过物理上缺失的日志文件。
备份表空间:
RMAN> backup tablespace users format '/u01/backup/rman/users_%U.bak'
备份数据文件:
RMAN> backup datafile 3,5 format '/u01/backup/rman/%d_%s.bak';
备份数据文件,可以多个,以“,”分开
备份归档日志:
查看当前数据库中归档日志
RMAN> list archivelog all;
备份所有归档日志,备份完成后删除库里的归档日志文件
RMAN> backup archivelog all delete input;
ORA-19625: error identifying file
RMAN> change archivelog all crosscheck;
RMAN> delete expired archivelog all;
备份控制文件:
RMAN> backup current controlfile;
备份参数文件:
RMAN> backup spfile;
3.FORMAT参数
使用FORMAT参数时可使用的各种替换变量,如下(注意大小写)所示:
%a:Oracle数据库的activation ID即RESETLOG_ID。
%c:备份片段的复制数(从1开始编号,最大不超过256)。
%d:Oracle数据库名称。
%D:当前时间中的日,格式为DD。
%e:归档序号。
%f:绝对文件编号。
%F:基于"DBID+时间"确定的唯一名称,格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII 为该数据库的DBID,YYYYMMDD为日期,QQ是一个1~256的序列。
%h:归档日志线程号。
%I:Oracle数据库的DBID。
%M:当前时间中的月,格式为MM。
%N:表空间名称。
%n:数据库名称,并且会在右侧用x字符进行填充,使其保持长度为8。比如数据库名JSSBOOK,则生成的名称则是JSSBOOKx。
%p:备份集中备份片段的编号,从1开始。
%s:备份集号。
%t:备份集时间戳。
%T:当前时间的年月日格式(YYYYMMDD)。
%u:是一个由备份集编号和建立时间压缩后组成的8字符名称。利用%u可以为每个备份集生成一个唯一的名称。
%U:默认是%u_%p_%c的简写形式,
利用它可以为每一个备份片段(即磁盘文件)生成一个唯一名称,
这是最常用的命名方式,
执行不同备份操作时,生成的规则也不同,如下所示:
生成备份片段时,%U=%u_%p_%c;
生成数据文件镜像复制时,%U=data-D-%d_id-%I_TS-%N_FNO-%f_%u;
生成归档文件镜像复制时,%U=arch-D_%d-id-%I_S-%e_T-%h_A-%a_%u;
生成控制文件镜像复制时,%U=cf-D_%d-id-%I_%u。
%Y:当前时间中的年,格式为YYYY。
注:如果在BACKUP命令中没有指定FORMAT选项,则RMAN默认使用%U为备份片段命名。

最后修改时间:2021-09-06 00:04:09
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




