1、RMAN 命令RMAN 命令 RMAN 命令2008年06月25日 星期三 11:27连接到目标数据库(不用恢复目录数据库) rman target / nocatalog显示rman配置RMAN show all;报告目标数据库的物理结构RMAN report schema;报告陈旧备份RMAN report obsolete;报告不可恢复的数据文件RMAN report unrecoverable;列出备份信息RMAN list backup;RMAN list backup of database;RMAN list backup of tablespace table_name;RMA
2、N list backup of controlfile;RMAN list backup of spfile;RMAN list backupset id;校验备份信息:RMAN crosscheck backup;RMAN crosscheck backup of database;RMAN crosscheck backup of tablespace system;RMAN crosscheck backup of controlfile;RMAN crosscheck backup of spfile;删除备份Use the ALLOCATE CHANNEL FOR MAINTENA
3、NCE command to manually allocate a channel in preparation for issuing a CHANGE, DELETE, or CROSSCHECK command. You can use the RELEASE CHANNEL command to unallocate the channel.ALLOCATE CHANNEL FOR MAINTENANCE device type (disk,sbt .)RMAN delete obsolete; - 删除陈旧备份RMAN delete expired backup; RMAN del
4、ete backupset id;RMAN delete backup; - 删除所有备份1 列出对应物 RMANlist incarnation;2 列出备份2.1概述可用的备份RMANlist backup summary;B 表示 backupF 表示 FULLA 表示 archive log0 1 表示 incremental backupS 说明备份状态 (AAVAILABLEX EXPIRED )2.2按备份类型列出备份RMANlist backup by file;按照 数据文件备份,归档日志备份,控制文件备份,服务器参数文件备份列出2.3列出详细备份RMANlist backu
5、p;2.4列出过期备份RMANlist expired backup;2.5列出表空间和数据文件备份list backup of tablespace 和list backup of datafile 输出和list backup 相似如:list backup of tablespace user_tbs;list backup of datafile 3;2.6列出归档日志备份RMANlist archivelog all;简要信息RMANlist backup of archivelog all;详细信息2.7列出控制文件和服务器参数文件RMANlist backup of contro
6、file;RMANlist backup of spfile;=RMAN 的 report命令1. 报告最近没有被备份的数据文件RMANreport need backup days=3;2. 报告备份冗余或恢复窗口RMANreport needbackup redundancy=2;RMANreport need backup recovery window of 2 days;3. 报告数据文件的不可恢复操作RMANreport unrecoverable;4. 报告数据库模式RMANreport schema;5. 报告丢弃的备份如果使用了保存策略,备份会标记为丢弃状态 RMANrepo
7、rt obsolete;删除丢弃状态备份RMANdelete obsolete;=RMAN的crosscheck 命令1 备份集有两种状态A(Available,RMAN认为该项存在于备份介质上)X(Expired,备份存在于控制文件或恢复目录中,但是并没有物理存在于备份介质上)2 crosscheck 的目的是检查RMAN 的目录以及物理文件,如果物理文件不存在于介质上,将标记为Expired。如果物理文件存在,将维持Available。如果原先标记为Expired的备份集再次存在于备份介质上(如恢复了损坏的磁盘驱动器后),crosscheck将把状态重新从Expired标记回Availab
8、le。3 crosscheck 输出分两部分。第一部分列出确定存在于备份介质上的所有备份集片,第二部分列出不存在于备份介质上的备份集片,并将其标记为Expired。当设置备份保 存策略后,一个备份过期,crosscheck之后标记为丢弃的备份状态依旧为availabel,要删除丢弃备份delete obsolete。4 示例:crosscheck backupcrosscheck backup of datafile 1;crosscheck backup of tablespace users;crosscheck backup of controfile;crosscheck backup
9、 of controlfile;crosscheck backup tag=SAT_BACKUP;crosscheck backup completed after sysdate - 2crosscheck backup completed between sysdate - 5 and sysdate -2 crosscheck backup device type sbt;crosscheck archivelog all;crosscheck archivelog like %ARC00012.001crosscheck archivelog from sequence 12;cros
10、scheck archivelog until sequence 522;=RMAN 的validate 命令1 validate 命令验证备份集片是否能够被还原2 list backup summary; 得到了备份集得主键ID如40,然后validate backupset 40;=RMAN 的备份保存策略以及change ,delete命令0.带delete参数的change 命令删除备份集,从备份介质,并且从控制文件和恢复目录中删除。change backupset 117,118 delete;change backuppiece 1304 delete;change archive
11、log until logseq =544 delete;1.两类策略:恢复窗口备份保存策略(recovery windows backup retension policy)基于时间备份冗余备份保存策略(backup redundancy backup retension policy) 基于备份的数量两类策略互相排斥2.即使使用了备份保存策略,备份到期并不删除,只是在RMAN目录中标记为丢弃,看到的状态依旧为available;要查看标记为丢弃的备份 report obsolete,只有使用delete obsolete才真正物理删除。3.configure retension polic
12、y to recovery window of 7 days;configure retension policy to redundancy 3;显示结果 show all;4.查看到期丢弃的备份时,可能需要手工保存一些备份 ,可以使用change 命令带keep 参数,使用这个命令后,那些被修改的备份将被认为是个long-term backup,不在受保存策略影响也就是说delete obsolete 也不删除。5.要使备份时候不受保存策略影响 ,使用带keep参数的backup 命令backup database keep forever;backup database keep 5 d
13、ays;6.change 命令功能可以修改备份为永久保存并将以及该备份的相关的日志保存下来,保证总能将备份恢复到当前时间点change backupset 31 keep forever logs;可以设置备份丢弃的新日期,将备份在多保存7 天,7 天后将删除change backupset 32 keep until time sysdata + 7 logs;7.change 可以将备份集设置为unavailablechange backupset 33 unavailable;标记为unavailable状态的备份集并不参与crosscheck;=恢复目录的记录删除1. $ORACLE_
14、HOME/rdbms/admin/prgrmanc.sql 脚本定期删除恢复目录中具有DELETED状态的记录2. 要删除旧的对应物记录incarnation.必须从DBINC 表中删除这些对应物,使用RC_DATABASE_INCARNATION 视图来确定要删除的对应物。记录要删除的每个对应物的DBINC_KEY随后启动SQL*Plus,执行delete from dbinc where dbinc_key=2;=手工同步恢复目录resync catalog;Oracle同步恢复目录的时候,首先创建快照控制文件,然后比较这个文件和恢复目录,完成后,Oracle 更新恢复目录,使恢复目录和控
15、制文件同步=在RMAN 中存储脚本1,连接到目标数据库和恢复目录rman target / catalog rman/rmanrman9i2,创建脚本RMANcreate script my_bk_script2backup database plus archivelog;create script my_bk_script3,打印脚本RMANprint script my_bk_script;printing stored scipt:my_bk_scriptbackup database plus archivelog;4,运行这个脚本,备份目标数据库RMANrun execute sc
16、ipt my_bk_script;5 删除脚本RMANdelete script my_bk_script;=archivelog模式下的完全恢复step1:set oracle_sid=recoverrman target rman_backup/passwordconfigure controlfile autobackup on;step2:backup database plus archivelog delete input;step3:shutdown immediate;step4:重命名所有的数据文件和控制文件,不重命名联机重做日志。step5: startup nomount
17、;set DBID=*restore controlfile from autobackup;alter database mount;step6: restore database;recover database;alter database open resetlogs;表空间恢复sqlalter tablespace users offline;sqlalter tablespace tools offline;restore tablespace users,tools;recover tablespace users,tools;sqlalter tablespace users
18、online;sqlalter tablespace tools online;数据文件恢复sqlalter database datafile 3 offline;sqlalter database datafile d:oracleoradatausers01.dbf offline;restore datafile 3restore datafile d:oracleoradatausers01.dbf;recover datafile 3recover datafile d:oracleoradatausers01.dbf;sqlalter database datafile 3 on
19、line;sqlalter database datafile d:oracleoradatausers01.dbfonline;=切换当前的incarnation 回到resetlogs 前RESET DATABASE TO INCARNATION inc_key=RMAN 高级恢复1 基于时间点的恢复runset until time to_date(07/01/02 15:00:00,mm/dd/yy hh24:mi:ss)restore database;recover database;alter database open resetlogs;2 基于SCN 的恢复startup mount;restore database UNTIL SCN 10000;recover database UNTIL SCN 10000;alter database open resetlogs;3 基于日志序列的恢复startup mount;restore database UNTIL SEQUENCE 100 thread 1;recover database UNTIL SEQUENCE 100 thread 1;alter database open resetlogs;=c: rman cmdfile= log=
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1