继续rman维护命令
change命令
改变备份状态 ~~~~更改RMAN 备份和副本的可用性
unavailable 不可用
available可用
更改可用性状态
如果无法找到备份或副本,或由于硬件维护的原因而导致备份或副本不可用,您可以使用
CHANGE ... UNAVAILABLE 命令。如果某个文件被标记为UNAVAILABLE,则当发出
RESTORE 或RECOVER 命令时,RMAN 将不会使用该文件。~~~~~~~~~~~~~****************
如果找到了该文件或维护过程已完成,则可以通过发出CHANGE ... AVAILABLE 命令
再次将其标记为可用。
1.改变备份集状态
RMAN> change backupset 95 unavailable;
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: unavailable 命令 (ORA_DISK_1 通道上, 在 09/16/2009 15:28:03 上) 失败
ORA-19813: 在 DB_RECOVERY_FILE_DEST 中不能有不可用的文件 E:\ORACLE\PRODUCT\10.2.0\F
LASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_16\O1_MF_NNNDF_TAG20090916T152729_5C14V1X
S_.BKP
注意如果 buckuPSET 使用的是default位置 为设置默认channel位置 ,放在了flashback recover area
那么状态不可以改变]
RMAN> change backupset 96 unavailable;
不能使用更改的备份段
备份段 handle=D:\BACKUP\34KPD6KP_1_1 recid=110 stamp=697735833
1 对象已更改为 UNAVAILABLE 状态
RMAN> list backup of datafile 6;
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
96 Full 152.00K DISK 00:00:00 16-9月 -09
BP 关键字: 110 状态: UNAVAILABLE 已压缩: NO 标记: TAG20090916T153033~~可以看到
状态为unavailable
段名:D:\BACKUP\34KPD6KP_1_1
备份集 96 中的数据文件列表
文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
6 Full 1732363 16-9月 -09 D:\TEST.DBF
change后跟
archivelog, backup, backuppiece, backupset, copy, controlfilecopy, datafilecopy
RMAN> change backup unavailable;所有buckupset 改为unavialable状态
RMAN> change backuppiece 112 unavailable;改指定备份片状态
RMAN> change datafilecopy 'd:\backup\df6.dbf' unavailable~~~~~~~~改变映像数据文件状态为不
可用
2> ;
不能使用更改的数据文件副本
数据文件副本 filename=D:\BACKUP\DF6.DBF recid=3 stamp=697742092
1 对象已更改为 UNAVAILABLE 状态
RMAN> change controlfilecopy 'd:\backup\ct6.dbf' unavailable~~改变映像controlfile状态为不
可用
2> ;
不能使用更改的控制文件副本
控制文件副本文件名=D:\BACKUP\CT6.DBF recid=4 stamp=697742122
1 对象已更改为 UNAVAILABLE 状态
RMAN> change copy unavailable~~~~~~~~~~~~改变所有映像副本状态
(controlfile,archivelog,datafile)
2> ;
RMAN> change archivelog all unavailable ;~~~~~~~~~改变所有archivelog状态
all, double-quoted-string, from, high, integer, like, logseq, low, scn, sequence, single-
quoted-string, time, until
更改过的存档日志不可用
存档日志文件名 =E:\ARCHIVELOG2\ARC00015_0697636641.001.ARC 记录 ID=25 时间戳 =69774
2381
更改过的存档日志不可用
存档日志文件名 =E:\ARCHIVELOG\ARC00015_0697636641.001.ARC 记录 ID=24 时间戳 =697742
381
2 对象已更改为 UNAVAILABLE 状态
改回available状态
RMAN> change archivelog all available ;
释放的通道: ORA_DISK_1
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=145 devtype=DISK
更改过的存档日志可用
存档日志文件名 =E:\ARCHIVELOG2\ARC00015_0697636641.001.ARC 记录 ID=25 时间戳 =69774
2381
更改过的存档日志可用
存档日志文件名 =E:\ARCHIVELOG\ARC00015_0697636641.001.ARC 记录 ID=24 时间戳 =697742
381
已将 2 对象更改为 AVAILABLE 状态
RMAN> change copy available ;
释放的通道: ORA_DISK_1
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=145 devtype=DISK
可以使用更改的数据文件副本
数据文件副本 filename=D:\BACKUP\DF6.DBF recid=3 stamp=697742092
可以使用更改的控制文件副本
控制文件副本文件名=D:\BACKUP\CT6.DBF recid=4 stamp=697742122
更改过的存档日志可用
存档日志文件名 =E:\ARCHIVELOG2\ARC00015_0697636641.001.ARC 记录 ID=25 时间戳 =69774
2381
更改过的存档日志可用
存档日志文件名 =E:\ARCHIVELOG\ARC00015_0697636641.001.ARC 记录 ID=24 时间戳 =697742
381
已将 4 对象更改为 AVAILABLE 状态
RMAN> change backup available ;
使用通道 ORA_DISK_1
可以使用更改的备份段
备份段 handle=E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_1
6\O1_MF_NNNDF_TAG20090916T152729_5C14V1XS_.BKP recid=109 stamp=697735649
可以使用更改的备份段
备份段 handle=D:\BACKUP\34KPD6KP_1_1 recid=110 stamp=697735833
可以使用更改的备份段
备份段 handle=E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_1
6\O1_MF_NNNDF_TAG20090916T153712_5C15F97B_.BKP recid=111 stamp=697736233
可以使用更改的备份段
备份段 handle=E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_1
6\O1_MF_NNNDF_TAG20090916T153712_5C15FR6T_.BKP recid=112 stamp=697736248
可以使用更改的备份段
备份段 handle=E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_1
6\O1_MF_NNNDF_TAG20090916T153712_5C15FZ89_.BKP recid=113 stamp=697736255
可以使用更改的备份段
备份段 handle=E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_1
6\O1_MF_NNNDF_TAG20090916T153712_5C15G6DP_.BKP recid=114 stamp=697736262
可以使用更改的备份段
备份段 handle=E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_1
6\O1_MF_NCSNF_TAG20090916T153712_5C15GHJ3_.BKP recid=115 stamp=697736271
已将 7 对象更改为 AVAILABLE 状态
延长备份,让备份脱离保留策略
RMAN> show retention policy 现在的保留策略是 当一个数据文件有2次备份时候 有一次为过期的
2> ;
RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
RMAN> backup datafile 6;
启动 backup 于 16-9月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00006 name=D:\TEST.DBF
通道 ORA_DISK_1: 正在启动段 1 于 16-9月 -09
通道 ORA_DISK_1: 已完成段 1 于 16-9月 -09
段句柄=E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_16\O1_MF
_NNNDF_TAG20090916T173206_5C1D4QHN_.BKP 标记=TAG20090916T173206 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 16-9月 -09
RMAN> backup datafile 6;
启动 backup 于 16-9月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00006 name=D:\TEST.DBF
通道 ORA_DISK_1: 正在启动段 1 于 16-9月 -09
通道 ORA_DISK_1: 已完成段 1 于 16-9月 -09
段句柄=E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2009_09_16\O1_MF
_NNNDF_TAG20090916T173214_5C1D4YL2_.BKP 标记=TAG20090916T173214 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 16-9月 -09
同一个文件备份2次,那么按保留策略保留一份来算,最早备份的为OBSOLETE
RMAN> report obsolete
2> ;
RMAN 保留策略将应用于该命令
将 RMAN 保留策略设置为冗余 1
已废弃的备份和副本报表
类型 关键字 完成时间 文件名/句柄
-------------------- ------ ------------------ --------------------
备份集 99 16-9月 -09
备份段 116 16-9月 -09 E:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA
\ORCL\BACKUPSET\2009_09_16\O1_MF_NNNDF_TAG20090916T173206_5C1D4QHN_.BKP
此时用DELETE OBSOLETE 可以删除过保留策略的
现在想改变这个BUCKUPSET 让它脱离备份策略
RMAN> change backupset 99 keep forever logs;
RMAN> change backupset 99 keep forever NOlogs;
forever:表示永久 必须使用恢复目录catalog,如果是用控制文件受control_file_record_keep_time
影响早晚会过期,所以必须使用catalog
LOGS :表示只要该备份或副本可用,则恢复此备份或副本所需的所有归档日志都必须保持可用。
NOLOGS :指定不保留恢复此备份所需的归档日志。
RMAN> change backupset 99 keep until time 'sysdate+1' logs;
使用通道 ORA_DISK_1
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: KEEP 命令 (ORA_DISK_1 通道上, 在 09/16/2009 17:42:56 上) 失败
ORA-19811: 在具有保留属性的 DB_RECOVERY_FILE_DEST 中不能有文件
另外如果备份在 flashback recover area (defalut)未配置备份通道,那么不可以改变保留属性
RMAN> report obsolete ;
RMAN 保留策略将应用于该命令
将 RMAN 保留策略设置为冗余 1
已废弃的备份和副本报表
类型 关键字 完成时间 文件名/句柄
-------------------- ------ ------------------ --------------------
备份集 101 16-9月 -09
备份段 118 16-9月 -09 D:\BACKUP\3BKPDEIS_1_1
RMAN> change backupset 101 keep until time 'sysdate+1' logs; 脱离保留策略一天
使用通道 ORA_DISK_1
备份的保留属性被更改
备份将于 17-9月 -09 废弃
备份失效时, 从该备份恢复所需的存档日志也会失效
备份集关键字 =101 记录 ID=101 时间戳=697743965
RMAN> report obsolete ;
RMAN 保留策略将应用于该命令
将 RMAN 保留策略设置为冗余 1
未找到已废弃的备份
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~修改系统时间 加一天,因为只脱离保留策略一天,改系统时
间后 又回到保留策略中
RMAN> report obsolete
2> ;
RMAN 保留策略将应用于该命令
将 RMAN 保留策略设置为冗余 1
已废弃的备份和副本报表
类型 关键字 完成时间 文件名/句柄
-------------------- ------ ------------------ --------------------
备份集 101 16-9月 -09
备份段 118 16-9月 -09 D:\BACKUP\3BKPDEIS_1_1
RMAN> change backupset 101 nokeep;取消延长让其回到保留策略中
使用通道 ORA_DISK_1
备份的保留属性被删除
备份集关键字 =101 记录 ID=101 时间戳=697743965
catalog命令
向资料库注册备份(操作系统数据文件副本,归档重做日志副本,控制文件副本)
例:没有使用catalog,rman信息都在controlfile中
RMAN> list backup;
备份集列表
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
103 Full 152.00K DISK 00:00:01 19-9月 -09
BP 关键字: 120 状态: AVAILABLE 已压缩: NO 标记: TAG20090919T092854
段名:D:\BACKUP\3DKPKEIM_1_1
备份集 103 中的数据文件列表
文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
6 Full 1766336 19-9月 -09 D:\TEST.DBF
RMAN> list copy;
数据文件副本列表
关键字 文件 S 完成时间 Ckp SCN Ckp 时间 名称
------- ---- - ---------- ---------- ---------- ----
5 6 A 19-9月 -09 1766362 19-9月 -09 D:\BACKUP\DF6.DBF
已存档的日志副本列表
关键字 Thrd Seq S 短时间 名称
------- ---- ------- - ---------- ----
33 1 19 A 17-9月 -09 E:\ARCHIVELOG2\ARC00019_0697636641.001.ARC
32 1 19 A 17-9月 -09 E:\ARCHIVELOG\ARC00019_0697636641.001.ARC
上面是现在controlfile中记录的buckupset,copy信息(没使用catalog)
SQL> alter database backup controlfile to trace;
数据库已更改。
SQL> startup force mount;
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE 例程已经启动。
Total System Global Area 612368384 bytes
Fixed Size 1250428 bytes
Variable Size 197135236 bytes
Database Buffers 406847488 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
SQL> startup force nomount;
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE 例程已经启动。
Total System Global Area 612368384 bytes
Fixed Size 1250428 bytes
Variable Size 197135236 bytes
Database Buffers 406847488 bytes
Redo Buffers 7135232 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
2 MAXLOGFILES 16
3 MAXLOGMEMBERS 3
4 MAXDATAFILES 100
5 MAXINSTANCES 8
6 MAXLOGHISTORY 292
7 LOGFILE
8 GROUP 1 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG' SIZE 50M,
9 GROUP 2 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG' SIZE 50M,
10 GROUP 3 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG' SIZE 50M
11 -- STANDBY LOGFILE
12 DATAFILE
13 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF',
14 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF',
15 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF',
16 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF',
17 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBF',
18 'D:\TEST.DBF',
19 'E:\SYSDATAFILE2.DBF'
20 CHARACTER SET ZHS16GBK
21 ;
控制文件已创建。
RMAN> list copy;
使用目标数据库控制文件替代恢复目录
说明与恢复目录中的任何存档日志均不匹配
RMAN> list backup;
新建立的控制文件中没有rman备份信息了,现在要使用catalog注册进来
现注册一下datafilecopy
RMAN> catalog datafilecopy 'D:\backup\df6.dbf';
还可以是controlfilecopy,archivelog
archivelog, backup, backuppiece, controlfilecopy, clone, datafilecopy, device,
db_recovery_file_dest, recovery, start
已将数据文件副本列入目录
数据文件副本 filename=D:\BACKUP\DF6.DBF recid=1 stamp=697974769
RMAN> list copy;
说明与恢复目录中的任何存档日志均不匹配
数据文件副本列表
关键字 文件 S 完成时间 Ckp SCN Ckp 时间 名称
------- ---- - ---------- ---------- ---------- ----
1 6 A 19-9月 -09 1766362 19-9月 -09 D:\BACKUP\DF6.DBF
RMAN> catalog start with 'd:\backup'~~~~~~~~~~~~~~~~~~buckupset 注册进来了
2> ; 注册整个目录中文件
RMAN> list backup;
备份集列表
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
1 Full 152.00K DISK 00:00:00 19-9月 -09
BP 关键字: 1 状态: AVAILABLE 已压缩: NO 标记: TAG20090919T092854
段名:D:\BACKUP\3DKPKEIM_1_1
备份集 1 中的数据文件列表
文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
6 Full 1766336 19-9月 -09 D:\TEST.DBF
RMAN> catalog db_recover_file_dest 注册db_recover_dile_desT中信息
2> ;
搜索恢复区域中的所有文件
数据库未知文件的列表
RMAN> catalog archivelog 'e:\archivelog\ARC00019_0697636641.001.ARC'; ~~注册archivlog~
已编目的存档日志
存档日志文件名 =E:\ARCHIVELOG\ARC00019_0697636641.001.ARC 记录 ID=27 时间戳 =697976
235
RMAN> catalog backuppiece 'E:\oracle\product\10.2.0\db_1\database\01KPKI1C_3_1'; ~注册
BACKUPPIECE
已列入目录的备份段
备份段 handle=E:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\01KPKI1C_3_1 recid=1 stamp=697
977392
RMAN> list backup;
可以看到备份集1中有4个PIECE,注册进来一个,其它3个状态DELETE
备份集列表
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
1 Full 99.99M DISK 00:00:00 19-9月 -09
备份集 1 中的数据文件列表
文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
1 Full 1758999 19-9月 -09 E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01
.DBF
备份集 副本号 1 属于备份集 1
设备类型 经过时间 完成时间 压缩标记
----------- ------------ ---------- ---------- ---
DISK 00:00:00 19-9月 -09 NO TAG20090919T102756
备份集 1 副本号 1的备份段列表
BP 关键字 Pc# 状态 段名称
------- --- ----------- ----------
1 DELETED
2 DELETED
1 3 AVAILABLE E:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\01KPKI1C_3_1
4 DELETED
取消在catalog中记载就是CATALOG..............uncatalog
另外如果controlfile 丢失 没有catalog,且备份都在backupset中可以使用
dbms_backup_restore把 backupseT restore回来,然后create controlfile
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12020513/viewspace-614875/ ,如需转载,请注明出处,否则将追究法律责任。