RMAN做数据迁移(一)

利用RMAN做数据迁移
由于数据库数据量大(1TB左右),数据库采用的是裸设备。而且原有的存储无法扩容,数据库正常运行必须将数据文件必须迁移至新的存储设备上(主机不变)。
1.新建RMAN恢复目录数据库(实例=rman).
第一步,在目录数据库中创建恢复目录所用表空间:
create tablespace rman_tar datafile '/oracle/oradata/rman/rman_tar.dbf' size 20M;

第二步,在目录数据库中创建RMAN 用户并授权:
create user rman identified by rman default tablespace rman_tar;
grant recovery_catalog_owner to rman;
grant connect to rman;
grant resource to rman;

第三步,在目录数据库中创建恢复目录
$rman catalog rman/rman
如果未安装恢复目录 (执行)
create catalog tablespace rman_tar;
2.注册目标数据库
第一步:启动恢复管理器,并且连接目标数据库:
$rman target sys/oracle@tar catalog rman/rman@rman ---目标数据库需要有dba权限的用户
第二步,注册数据库:
RMAN> register database;

3.对目标数据库进行备份
/*在非归档模式下备份*/
数据库状态:
恢复目录: 打开
目标数据库:例程启动或者数据库加载
恢复目录数据库需要打开,目标数据库必须启动(或者加载)。因为目标数据库不在归档模式下,
所以当进行备份恢复操作的时候数据库无法打开。不可以将表空间置于热备份模式上进行等同于文件系统级的拷贝,
如果在非归档模式,数据库打开的状态下不能进行数据文件的备份。
---记录备份时所有的数据文件名和对应的数据文件编号
RMAN> run {
3> allocate channel dev1 type disk;
4> backup
5> full
6> tag full_db_backup
7> format '/oracle/backups/fullbackup'
8> (database);
9> release channel dev1;
10> }
4.建立空实例(实例名为aux).
第一步:构建辅助数据库目录结构
mkdir -p $ORACLE_BASE/oradata/aux
mkdir $ORACLE_BASE/admin/aux
cd $ORACLE_BASE/admin/aux
mkdir pfile bdump udump cdump
第二步:环境变量的设置
export ORACLE_SID=aux
第三步:密码,参数,控制文件的建立
1. $ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapwaux password=orcl
2.cp $ORACLE_HOME/dbs/init.ora $ORACLE_BASE/admin/aux/pfile/

db_block_size =
DB_NAME=AUX
compatible = 9.2.0.0 /* should be the same as the target
CONTROL_FILES=(/oracle/oradata/aux/control01.ctl,
/oracle/oradata/aux/control02.ctl)
#DB_FILE_NAME_CONVERT=('/oracle/oradata/aux/','/oracle/oradata/aux/')
#LOG_FILE_NAME_CONVERT=('/oracle/oradata/aux/redo','/oracle/oradata/aux/redo')
3.启动aux实例
SQL>startup nomount pfile="/oracle/admin/aux/pfile/init.ora"
4.启动RMAN连接目标数据库,目录数据库,辅助数据库 (环境变量ORACLE_SID必须是辅助数据库名)
RMAN> CONNECT TARGET sys/oracle@tar;
RMAN> CONNECT CATALOG rman/rman@rman;
RMAN> CONNECT AUXILIARY SYS/orcl@aux;
RMAN> CONFIGURE CHANNEL DEVICE TYPE disk CLEAR; (清除以前channel的配置)
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO disk;
RMAN> CONFIGURE DEVICE TYPE disk PARALLELISM 3;
RMAN> RUN
{
# the DUPLICATE command uses an automatic disk channel
SET NEWNAME FOR DATAFILE 1 TO '/oracle/oradata/aux/system01.dbf';
SET NEWNAME FOR DATAFILE 2 TO '/oracle/oradata/aux/undotbs01.dbf';
SET NEWNAME FOR DATAFILE 3 TO '/oracle/oradata/aux/index01.dbf';
SET NEWNAME FOR DATAFILE 4 TO '/oracle/oradata/aux/tools01.dbf';
SET NEWNAME FOR DATAFILE 5 TO '/oracle/oradata/aux/users01.dbf';
SET NEWNAME FOR DATAFILE 6 TO '/dev/rryxx';
SET NEWNAME FOR DATAFILE 7 TO '/dev/rdz';
SET NEWNAME FOR DATAFILE 8 TO '/dev/rhx';
SET NEWNAME FOR DATAFILE 9 TO '/dev/rsf';
SET NEWNAME FOR DATAFILE 10 TO '/dev/rpr';
SET NEWNAME FOR DATAFILE 11 TO '/dev/rpic';
SET NEWNAME FOR DATAFILE 12 TO '/dev/rsys';
SET NEWNAME FOR DATAFILE 13 TO '/dev/ridx';
DUPLICATE TARGET DATABASE TO AUX
SKIP TABLESPACE indx
LOGFILE
GROUP 1 ('/oracle/oradata/aux/redo01a.log','/oracle/oradata/aux/redo01b.log') SIZE 10M REUSE,
GROUP 2 ('/oracle/oradata/aux/redo02a.log','/oracle/oradata/aux/redo02b.log') SIZE 10M REUSE;
}
提示成功,数据迁移完成。
[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22934571/viewspace-1047436/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22934571/viewspace-1047436/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值