rman迁移及异地恢复

/u01/app/oracle/product/10.1/bin/rman target sys/sys123
一、在数据库没有改变的情况下
1、备份全库及控制文件
run {
  configure controlfile autobackup on;
  configure controlfile autobackup format for device type disk to '/opt/rmanbak/%F';
  allocate channel d1 type disk;
  allocate channel d2 type disk;
  backup incremental level=0 database format '/opt/rmanbak/d_%T_%s.bak';
  release channel d1;
  release channel d2;
  }

2、拷贝参数文件

$ORACLE_HOME/dbs/spfile{SID}.ora
$ORACLE_HOME/dbs/orapw{SID}
$ORACLE_HOME/network/admin/tnsnames.ora
$ORACLE_HOME/network/admin/listener.ora
$ORACLE_HOME/network/admin/sqlnet.ora
环境变量,及归档目录

3、建立相应的admin  oradata等文件目录

4、scp /home/sptest/htliu.txt  root@133.128.21.84:/home  拷贝

5、恢复控制文件

 

RMAN> restore controlfile from'/opt/rmanbak/c-4177123655-20101022-01';

 6、mount下restore 如果报如下错
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 07/04/2008 10:31:56
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 24 found to restore

分析原因,应该是找不到备份集来做恢复,用list backup看看恢复集的情况,发现status是expired的.

RMAN> list backup;

用crosscheck backup后状态改为AVAILABLE了.

RMAN> crosscheck backup;

RMAN> restore database;

7、恢复
RMAN> recover database;

Starting recover at 04-JUL-08
using channel ORA_DISK_1

starting media recovery

unable to find archive log
archive log thread=1 sequence=12
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 07/04/2008 11:30:16
RMAN-06054: media recovery requesting unknown log: thread 1 seq 12 lowscn 65089949

报错了,但是没关系,并非严重错误,只是提醒你恢复到一个未知的scn号。如果要避免这个错误,

可以在alter database mount之后,通过set until scn或者set until time命令设置恢复到的scn号

或时间。


打开数据库
RMAN>alter database open resetlogs;

验证一下:

SQL> select status from v$instance;

STATUS
------------
OPEN


------------------------------------------以上是在断开应用服务条件下(切换redo)一致性 执行全备恢复的-----------------------------------

 

如果是在1号执行全备2号进行恢复 则要把归档日志转移到相应目录下

 

注意:1、目录相同,否则要rename

         2、执行备份或恢复前 多switch  log

         3、如果在全备后发生了事物则需要把全备时刻到最新的归档日志cp到相应目录,拷贝前多switch  log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RMANOracle数据库备份和恢复管理工具,可以用来迁移Oracle数据库。使用RMAN迁移数据库可以确保数据的一致性和完整性。 首先,需要在目标主机上安装Oracle软件并配置好数据库实例。然后,在源数据库所在的主机上运行RMAN命令,将源数据库备份到目标主机上。需要确保源和目标主机之间的网络连接正常。 在源数据库主机上,可以使用RMAN的备份命令进行全库备份或部分备份。备份可以保存到磁盘或磁带上。备份文件需要被复制到目标主机上,可以通过FTP、Rsync或其他传输工具进行文件复制。 在目标主机上,需要创建与源数据库相同的数据库实例。可以使用RMAN恢复命令将备份文件还原到目标数据库恢复可以根据需求选择全库恢复或部分恢复。 在迁移过程中,还需要更新目标数据库的相关文件,如参数文件、控制文件等。可以使用RMAN的命令来完成这些操作。同时,还需要确保目标数据库的网络连接和权限设置与源数据库相同。 最后,进行数据迁移测试,确保迁移后的数据库能够正常运行。可以验证数据的一致性和完整性,并执行基本的数据库操作,如查询、插入、更新、删除等。 RMAN迁移Oracle数据库可以保证数据的安全性和可靠性。通过备份和恢复操作,可以最小化数据丢失的风险,并确保数据的一致性。同时,RMAN提供了丰富的命令和选项,使数据库迁移过程更加灵活和高效。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值