oracle运维系列2:RMAN异地数据库恢复
前言
银行数据库异地迁移。涉及到数据库的备份恢复,刚拿到手着实一脸蒙蔽。好在在我司DBA的支持下慢慢解决。也慢慢懂得了其中的原理。因而写下此文以作记录。
备份方案
- 备份脚本
整个脚本比较长,本次仅贴出主体RMAN部分。
run{allocate channel ch01 type ${_media_type};allocate channel ch02 type ${_media_type};allocate channel ch03 type ${_media_type};send 'NB_ORA_POLICY=${NB_ORA_POLICY}';backup spfile format='${DiskLocation}SPFILE_%d_%T_%t_%s_%p.bak';backup as compressed backupset database format='${DiskLocation}FULL_%d_%T_%t_%s_%p.bak';backup current controlfile format='${DiskLocation}CTL1_%d_%T_%t_%s_%p.bak';sql 'alter system archive log current';backup as compressed backupset filesperset 10 maxsetsize 5G skip inaccessible format '${DiskLocation}ARCH_%d_%T_%t_%s_%p.bak' archivelog all not backed up 1 times;backup current controlfile format='${DiskLocation}CTL2_%d_%T_%t_%s_%p.bak';delete noprompt archivelog all completed before 'sysdate-2';release channel ch01;release channel ch02;release channel ch03;
}
- 脚本解释:
1. 分配了3个channel进行并发处理;
2. 依次备份spfile、database(datafile)、controlfile、archivelog;(两次controlfile)
3. 删除了前两天的归档日志文件。
- 备份结果
备份产生如下文件。
[oracle@t24db02 dbs]<20181203 17:14:23>$ ls /opt/app/ | grep bak
ARCH_T24APDB_20181126_993230124_15764_1.bak
ARCH_T24APDB_20181126_993230124_15765_1.bak
ARCH_T24APDB_20181126_993230124_15766_1.bak
CTL1_T24APDB_20181126_993230119_15763_1.bak
CTL2_T24APDB_20181126_993230131_15767_1.bak
FULL_T24APDB_20181126_993228896_15758_1.bak
FULL_T24APDB_20181126_993228896_15759_1.bak
FULL_T24APDB_20181126_993228896_15760_1.bak
FULL_T24APDB_20181126_993229041_15761_1.bak
FULL_T24APDB_20181126_993229043_15762_1.bak
SPFILE_T24APDB_20181126_993228894_15757_1.bak
重建spfile
步骤
- rman链接数据库
[oracle@t24db02 ~]<20181203 19:34:20>$ rman target / Recovery Manager: Release 12.1.0.2.0 - Production on Mon Dec 3 19:34:24 2018 Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved. connected to t
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
