迁移方案4-1:映像副本(copy)的本机使用案例—(最适合fs-asm迁移,也可以实现跨主机迁移)
一、什么是映像副本(COPY)
1、映像副本的介绍
(1)rman可以创建哪些副本
RMAN 可以创建数据库数据文件,归档重做日志或者控制文件的精确副本。
(2)副本是什么
Rman 副本是这些文件的副本,区别仅仅在于名称和位置上的变化,我们不需要考虑备份片或其他问题。 映像副本只能在磁盘上生成,且不能生成增量副本。 生成映像副本必须加载或打开数据库。 生成副本的历史记录保存在数据库控制文件中,所以我们可以跟踪副本生成的时间和驻留的位置。
(3)与rman常规备份的区别
类似与常规备份,可以建立整个数据库,表空间或数据文件的映像副本。
RMAN 复制过程提供一些和普通RMAN 备份集相同的保护,例如检查讹误代码
块以及逻辑讹误。 此外,映像副本可以与普通的备份集结合起来,帮助完成数据库恢复。
2、映像副本的作用
当数据库原数据文件出现丢失或问题是,我们可以快速利用映像副本+rman的recover功能,启用映像副本。
可以是整个库,也可以是某个数据文件的转移启用。
3、映像副本的创建
Backup 命令支持数据库映像副本的创建。 RMAN可以通过backup as copy命令生成映像副本。
(1)数据库的映像副本
RMAN>backup as copy database;
(2)表空间的映像副本创建:
RMAN>backup as copy tablespace Users;
(3)数据文件的映像副本:
Backup as copy datafile 1; Backup as copy datafile 'D:/APP/ADMINISTRATOR/ORADATA/ORCL/DAVE0.DBF';
(4)控制文件副本
--备份控制文件:
Backup current controlfile;
--创建控制文件的副本:
Backup as copy current controlfile;
--创建用于备份数据库的控制文件:
Backup as copy standby controlfile;
--在创建时还可以指定别名:
Backup as copy standby controlfile format 'D:/backup/controlfilecopy.ctl';
4、 Archivelog 映像副本
生成归档的重做日志副本是非常有用的。
使用Oracle 的Logminer 产品挖掘(Mine)归档的重做日志副本显然比必须先从备份集中析取这个归档的重做日志更为简单。使用copy 命令的archivelog 参数可以创建归档的重做日志副本。
遗憾的是,使用copy archivelog时必须列出每个归档的重做日志名,而不能指定要复制的归档的重做日志的时间范围。
Backup as copy archivelog all;
三、映像副本的使用
1、数据库数据文件快速更换
(1)创建数据映像副本
RMAN>backup as copy database plus achivelog;
(2)删除原数据库数据文件
[oracle@qdmes219:/oracle/app/oracle/oradata/mesorcl]$rm -rf *.dbf
(3)启动数据库到mount
shutdown abort; startup mount;
(4)注册新数据文件位置(控制文件已经记录了映像副本的位置,无需重新注册)
/oracle/archivelog/MESORCL/datafile/
(4)更换数据库副本
RMAN> switch database to copy;
(5)恢复数据库
RMAN> recover database;
(6)打开数据库
RMAN> alter database open;
2、反向切换
(1)创建数据映像副本
RMAN>backup as copy database plus achivelog;
(2)移动新的映像副本到原目录
[oracle@qdmes219:/oracle/archivelog/MESORCL/datafile]$mv o1_mf_system_l2h62149_.dbf /oracle/app/oracle/oradata/mesorcl/system01.dbf [oracle@qdmes219:/oracle/archivelog/MESORCL/datafile]$mv o1_mf_sysaux_l2h61y2g_.dbf /oracle/app/oracle/oradata/mesorcl/sysaux01.dbf [oracle@qdmes219:/oracle/archivelog/MESORCL/datafile]$mv o1_mf_example_l2h6246f_.dbf /oracle/app/oracle/oradata/mesorcl/example01.dbf [oracle@qdmes219:/oracle/archivelog/MESORCL/datafile]$mv o1_mf_undotbs1_l2h6258b_.dbf /oracle/app/oracle/oradata/mesorcl/undotbs01.dbf [oracle@qdmes219:/oracle/archivelog/MESORCL/datafile]$mv o1_mf_test_tbs_l2h626b9_.dbf /oracle/app/oracle/oradata/mesorcl/test01.dbf [oracle@qdmes219:/oracle/archivelog/MESORCL/datafile]$mv o1_mf_users_l2h62bgc_.dbf /oracle/app/oracle/oradata/mesorcl/user01.dbf
(3)启动数据库到mount
shutdown abort; startup mount;
(4)注册新数据文件位置
catalog start with '/oracle/archivelog/MESORCL/datafile/';
(5)更换数据库副本
RMAN> switch database to copy;
(6)恢复数据库
RMAN> recover database;
(7)打开数据库
RMAN> alter database open;