Oracle之rman异机恢复方案

  • Oracle之rman异机恢复方案

(1) 检查备份信息

su - oracle

ls -lrt /backup/crmdb-bak/*

(2) 恢复控制文件
 

rman target /

startup nomount;

restore controlfile from '/backup/crmdb-bak/fulldb_CRMDB_20230820_27172_1';


alter database mount;


(3) 修改redo 日志文件和临时表空间文件的路径

sqlplus / as sysdba 

set line 160
set pagesize 200
select 'alter database rename file '''||member||''' to ''/u01/oradata'||substr(member,instr(member,'/',-1))||''';' 
from v$logfile;


set line 160
set pagesize 200
select 'alter database rename file '''||name||''' to ''/u01/oradata'||substr(name,instr(name,'/',-1))||''';' 
from v$tempfile;

(4) 重新注册备份路径

rman target /

catalog start with '/backup/crmdb-bak';  

(5) 删除过期归档

crosscheck backupset;
delete noprompt expired backup;
crosscheck archivelog all;

list backup of archivelog all;
list backup of database;
list backup of controlfile;


(6) 恢复数据库

run{
    allocate channel dsk1 device type disk;
    allocate channel dsk2 device type disk;
    allocate channel dsk3 device type disk;
    allocate channel dsk4 device type disk;
    set newname for database to '/u01/oradata/%b';
    restore database; 
    switch datafile all;
    recover database ;
    release channel dsk1;
    release channel dsk2;
    release channel dsk3;
    release channel dsk4;
}

# 根据scn恢复
-- set until scn 12990120948077;


(7)关闭数据库

sqlplus / as sysdba 

alter database open resetlogs;

select open_mode from v$database;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

の正在缓存99%

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值