原库   目标库
操作系统 CentOS 6.4 CentOS 6.4
主机名 sht-sgmhadoopnn-01 sht-sgmhadoopnn-02
IP 172.16.101.55 172.16.101.56
数据库版本 11.2.0.4.0 11.2.0.4.0
$ORACLE_BASE /u01/app/oracle /u01/app/oracle
$ORACLE_HOME /u01/app/oracle/product/11.2.0/db_1 /u01/app/oracle/product/11.2.0/db_1
数据库名 userdata   userdata

本次以原库全新安装后为例说明利用RMAN做异机恢复,原库和目标库路径一致,目标库仅需安装数据库软件即可,安装过程详见我的另一篇博客http://www.cnblogs.com/ilifeilong/p/7041676.html

1. 原库开启归档模式

SYS@userdata>archive log list;
Database log mode   No Archive Mode
Automatic archival  Disabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 1
Current log sequence 3 SYS@userdata>shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down. SYS@userdata>startup mount;
ORACLE instance started. Total System Global Area 1837244416 bytes
Fixed Size 2254224 bytes
Variable Size 637536880 bytes
Database Buffers 1191182336 bytes
Redo Buffers 6270976 bytes
Database mounted. SYS@userdata>alter database archivelog; Database altered. SYS@userdata>alter database open; Database altered. SYS@userdata>archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 1
Next log sequence to archive 3
Current log sequence 3

2. 用RMAN对原库进行备份

$ mkdir /home/oracle/backupset
$ rman target / Recovery Manager: Release 11.2.0.4.0 - Production on Thu Aug 10 20:00:02 2017 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: USERDATA (DBID=3894924926) RMAN> run {
allocate channel ch1 device type disk;
allocate channel ch2 device type disk;
sql 'alter system archive log current';
backup database format '/home/oracle/backupset/data_%U.bak';
backup archivelog all format '/home/oracle/backupset/arch_%U.bak';
backup current controlfile format '/home/oracle/backupset/ctl_%U.bak';
release channel ch1;
release channel ch2;
} using target database control file instead of recovery catalog
allocated channel: ch1
channel ch1: SID=479 device type=DISK allocated channel: ch2
channel ch2: SID=20 device type=DISK sql statement: alter system archive log current Starting backup at 2017-08-10 20:05:18
channel ch1: starting full datafile backup set
channel ch1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/userdata/system01.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/userdata/users01.dbf
channel ch1: starting piece 1 at 2017-08-10 20:05:18
channel ch2: starting full datafile backup set
channel ch2: specifying datafile(s) in backup set
input datafile file number=00002 name=/u01/app/oracle/oradata/userdata/sysaux01.dbf
input datafile file number=00003 name=/u01/app/oracle/oradata/userdata/undotbs01.dbf
channel ch2: starting piece 1 at 2017-08-10 20:05:18
channel ch2: finished piece 1 at 2017-08-10 20:05:33
piece handle=/home/oracle/backupset/data_02sbj0ru_1_1.bak tag=TAG20170810T200518 comment=NONE
channel ch2: backup set complete, elapsed time: 00:00:15
channel ch2: starting full datafile backup set
channel ch2: specifying datafile(s) in backup set
including current control file in backup set
channel ch2: starting piece 1 at 2017-08-10 20:05:35
channel ch2: finished piece 1 at 2017-08-10 20:05:36
piece handle=/home/oracle/backupset/data_03sbj0se_1_1.bak tag=TAG20170810T200518 comment=NONE
channel ch2: backup set complete, elapsed time: 00:00:01
channel ch2: starting full datafile backup set
channel ch2: specifying datafile(s) in backup set
including current SPFILE in backup set
channel ch2: starting piece 1 at 2017-08-10 20:05:36
channel ch1: finished piece 1 at 2017-08-10 20:05:37
piece handle=/home/oracle/backupset/data_01sbj0ru_1_1.bak tag=TAG20170810T200518 comment=NONE
channel ch1: backup set complete, elapsed time: 00:00:19
channel ch2: finished piece 1 at 2017-08-10 20:05:37
piece handle=/home/oracle/backupset/data_04sbj0sg_1_1.bak tag=TAG20170810T200518 comment=NONE
channel ch2: backup set complete, elapsed time: 00:00:01
Finished backup at 2017-08-10 20:05:37 Starting backup at 2017-08-10 20:05:38
current log archived
channel ch1: starting archived log backup set
channel ch1: specifying archived log(s) in backup set
input archived log thread=1 sequence=3 RECID=1 STAMP=951681918
channel ch1: starting piece 1 at 2017-08-10 20:05:39
channel ch2: starting archived log backup set
channel ch2: specifying archived log(s) in backup set
input archived log thread=1 sequence=4 RECID=2 STAMP=951681939
channel ch2: starting piece 1 at 2017-08-10 20:05:39
channel ch1: finished piece 1 at 2017-08-10 20:05:40
piece handle=/home/oracle/backupset/arch_05sbj0sj_1_1.bak tag=TAG20170810T200539 comment=NONE
channel ch1: backup set complete, elapsed time: 00:00:01
channel ch2: finished piece 1 at 2017-08-10 20:05:40
piece handle=/home/oracle/backupset/arch_06sbj0sj_1_1.bak tag=TAG20170810T200539 comment=NONE
channel ch2: backup set complete, elapsed time: 00:00:01
Finished backup at 2017-08-10 20:05:40 Starting backup at 2017-08-10 20:05:41
channel ch1: starting full datafile backup set
channel ch1: specifying datafile(s) in backup set
including current control file in backup set
channel ch1: starting piece 1 at 2017-08-10 20:05:42
channel ch1: finished piece 1 at 2017-08-10 20:05:43
piece handle=/home/oracle/backupset/ctl_07sbj0sl_1_1.bak tag=TAG20170810T200541 comment=NONE
channel ch1: backup set complete, elapsed time: 00:00:01
Finished backup at 2017-08-10 20:05:43 released channel: ch1 released channel: ch2 SYS@userdata>create pfile='/home/oracle/backupset/pfile.ora' from spfile;

3. 将备份目录拷贝到目标节点相同目录

$ scp -r /home/oracle/backupset oracle@172.16.101.56:/home/oracle/
pfile.ora % .0KB/s :
arch_05sbj0sj_1_1.bak % 23MB .5MB/s :
data_02sbj0ru_1_1.bak % 379MB .9MB/s :
data_01sbj0ru_1_1.bak % 635MB .9MB/s :
data_04sbj0sg_1_1.bak % 96KB .0KB/s :
arch_06sbj0sj_1_1.bak % 14KB .5KB/s :
ctl_07sbj0sl_1_1.bak % 11MB .7MB/s :
data_03sbj0se_1_1.bak % 11MB .7MB/s :

3. 目标库安装数据库软件

略过,参考 http://www.cnblogs.com/ilifeilong/p/7041676.html

4. 创建密码文件

$ scp $ORACLE_HOME/dbs/orapwuserdata oracle@sht-sgmhadoopnn-:$ORACLE_HOME/dbs/
orapwuserdata % .5KB/s :

5. 还原参数文件,启动到nomount状态

$ cat /home/oracle/backupset/pfile.ora
userdata.__db_cache_size=
userdata.__java_pool_size=
userdata.__large_pool_size=
userdata.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment
userdata.__pga_aggregate_target=
userdata.__sga_target=
userdata.__shared_io_pool_size=
userdata.__shared_pool_size=
userdata.__streams_pool_size=
*.audit_file_dest='/u01/app/oracle/admin/userdata/adump'
*.audit_trail='db'
*.compatible='11.2.0.4.0'
*.control_files='/u01/app/oracle/oradata/userdata/control01.ctl','/u01/app/oracle/fast_recovery_area/userdata/control02.ctl'
*.db_block_size=
*.db_domain=''
*.db_name='userdata'
*.db_recovery_file_dest='/u01/app/oracle/fast_recovery_area'
*.db_recovery_file_dest_size=
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=userdataXDB)'
*.java_jit_enabled=FALSE
*.open_cursors=
*.pga_aggregate_target=
*.processes=
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=
*.undo_tablespace='UNDOTBS1' $ mkdir -p /u01/app/oracle/admin/userdata/adump
$ mkdir -p /u01/app/oracle/oradata/userdata
$ mkdir -p /u01/app/oracle/fast_recovery_area/userdata SYS@userdata>startup nomount pfile='/home/oracle/backupset/pfile.ora';
ORACLE instance started. Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes SYS@userdata>create spfile from pfile='/home/oracle/backupset/pfile.ora'; File created. SYS@userdata>shutdown immediate;
ORA-: database not mounted ORACLE instance shut down. SYS@userdata>startup nomount;
ORACLE instance started. Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes

6. RMAN还原控制文件,并启动到mount状态

RMAN> restore controlfile from '/home/oracle/backupset/ctl_07sbj0sl_1_1.bak';

Starting restore at 2017-08-11 00:55:00
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=10 device type=DISK channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/u01/app/oracle/oradata/userdata/control01.ctl
output file name=/u01/app/oracle/fast_recovery_area/userdata/control02.ctl
Finished restore at 2017-08-11 00:55:02 RMAN> alter database mount; database mounted
released channel: ORA_DISK_1

7. RMAN还原与恢复数据库

RMAN> recover database;

Starting recover at 2017-08-11 00:58:34
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=10 device type=DISK starting media recovery channel ORA_DISK_1: starting archived log restore to default destination
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=4
channel ORA_DISK_1: reading from backup piece /home/oracle/backupset/arch_06sbj0sj_1_1.bak
channel ORA_DISK_1: piece handle=/home/oracle/backupset/arch_06sbj0sj_1_1.bak tag=TAG20170810T200539
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/u01/app/oracle/fast_recovery_area/USERDATA/archivelog/2017_08_11/o1_mf_1_4_drs45wx1_.arc thread=1 sequence=4
channel default: deleting archived log(s)
archived log file name=/u01/app/oracle/fast_recovery_area/USERDATA/archivelog/2017_08_11/o1_mf_1_4_drs45wx1_.arc RECID=3 STAMP=951699516
unable to find archived log
archived log thread=1 sequence=5
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 08/11/2017 00:58:38
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 5 and starting SCN of 969878 RMAN> recover database until scn 969878; Starting recover at 2017-08-11 00:59:49
using channel ORA_DISK_1 starting media recovery
media recovery complete, elapsed time: 00:00:00 Finished recover at 2017-08-11 00:59:51

8. 以resetlogs方式打开数据库

SYS@userdata>alter database open resetlogs;

Database altered.

9. 验证数据库数据

SYS@userdata>select instance_name, status from v$instance;

INSTANCE_NAME                     STATUS
------------------------------------------------ ------------------------------------
userdata OPEN SYS@userdata>select dbid, open_mode from v$database; DBID OPEN_MODE
---------- ------------------------------------------------------------
3894924926 READ WRITE SYS@userdata>select file_name from dba_data_files; FILE_NAME
------------------------------------------------------------
/u01/app/oracle/oradata/userdata/users01.dbf
/u01/app/oracle/oradata/userdata/undotbs01.dbf
/u01/app/oracle/oradata/userdata/sysaux01.dbf
/u01/app/oracle/oradata/userdata/system01.dbf SYS@userdata>select member from v$logfile; MEMBER
--------------------------------------------------
/u01/app/oracle/oradata/userdata/redo03.log
/u01/app/oracle/oradata/userdata/redo02.log
/u01/app/oracle/oradata/userdata/redo01.log SYS@userdata>SELECT THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$LOG; THREAD# SEQUENCE# ARCHIVED STATUS
---------- ---------- --------- ------------------------------------------------
1 1 NO CURRENT
1 0 YES UNUSED
1 0 YES UNUSED

10. 创建监听

$ cat $ORACLE_HOME/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/11.2./db_1/network/admin/listener.ora
# Generated by Oracle configuration tools. LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = sht-sgmhadoopnn-)(PORT = ))
)
) ADR_BASE_LISTENER = /u01/app/oracle $ lsnrctl start LSNRCTL for Linux: Version 11.2.0.4. - Production on -AUG- :: Copyright (c) , , Oracle. All rights reserved. Starting /u01/app/oracle/product/11.2./db_1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.4. - Production
System parameter file is /u01/app/oracle/product/11.2./db_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/diag/tnslsnr/sht-sgmhadoopnn-/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sht-sgmhadoopnn-)(PORT=))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.4. - Production
Start Date -AUG- ::
Uptime days hr. min. sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2./db_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/sht-sgmhadoopnn-/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sht-sgmhadoopnn-)(PORT=)))
The listener supports no services
The command completed successfully $ sqlplus system/ SQL*Plus: Release 11.2.0.4. Production on Fri Aug :: Copyright (c) , , Oracle. All rights reserved. Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4. - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SYSTEM@userdata>

Oracle 11g 异机恢复参考文档的更多相关文章

  1. oracle rman异机恢复

      Oracle源主机 Oracle目标主机 主机平台 CentOS6.2(final) CentOs6.2(FInal) 主机名 vick rman IP地址 192.168.1.11 192.16 ...

  2. Oracle RMAN 异机恢复一例

    背景介绍:本例需求是将NBU备份的oracle数据库恢复到另一主机上. NBU环境配置.异机上的Oracle软件安装配置忽略,下面只介绍OracleDB恢复的过程. ----------------- ...

  3. Oracle 数据库异机恢复(归档模式)

    操作必须在服务器上进行(在192.168.12.71上执行) 0.按需要恢复的日期,把距恢复日期最近的全部备份和全部备份日期后的日志备份一同拷贝到需要恢复的机器上: 1.用RMAN登陆 C:\User ...

  4. 【RMAN】RMAN跨版本恢复(下)--大版本异机恢复

    [RMAN]RMAN跨版本恢复(下)--大版本异机恢复 BLOG文档结构图 ORACLE_SID=ORA1024G 关于10g的跨小版本恢复参考:http://blog.chinaunix.net/u ...

  5. oracle异机恢复测试

    (一)问题背景 最近在生产环境中,开发人员误操作,使用truncate将oracle数据库某个表的数据全部删除了,在删除之后,开发人员发现自己闯祸了,于是联系值班的DBA进行紧急数据恢复. 经过分析, ...

  6. Hyper-V安装Oracle Linux6_4 Oracle db 12c并使用rman做异机恢复

    本文记录在Windows Server 2012 R2上安装Oracle Enterprise Linux 6.4以及使用RMAN进行进行异机恢复的过程. Windows服务器增加Hyper-V功能 ...

  7. Oracle 单实例 迁移到 RAC 实例 -- 使用RMAN 异机恢复

    Oracle 官网有关单实例迁移到RAC的一个步骤说明: How to Convert 10g Single-Instance database to 10g RAC using Manual Con ...

  8. 使用不同用户对Oracle数据库进行异机恢复,失败,错误:Backup file not found in NetBackup catalog

    最近做某数据库恢复演练,数据库版本是10.2.0.4,恢复控制文件一直报错,报错如下,经过反复折腾,原来恢复机上oracle用户不是oracle导致(我的是oraclev4),查看源库oracle用户 ...

  9. 使用NBU进行oracle异机恢复

    windows平台的异机恢复,目录不同 1.异机环境准备安装oracle介质安装nbu客户端在异机主机的host文件中添加nbu server主机和原主机信息 2.恢复spfile文件 C:\> ...

随机推荐

  1. Bootstrap 3 媒体查询

    可以参考 Bootstrap  的媒体查询,写网站. html: <div class="bootstrap-3-media"> <p>Mobile-Fir ...

  2. python3 session cookie

    session是保存在服务器中的,而cookies是保存在客户端中的.服务器通过session id来跟踪客户,而对于客户端而言,session id是保存在cookies中的,所以只要把cookie ...

  3. Python open 对应的参数

  4. 【BZOJ】4013: [HNOI2015]实验比较

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=4013 中第i 条涉及的图片对为(KXi, Xi),判断要么是KXi < Xi ,要么 ...

  5. FZU oj 2277 Change 树状数组+dfs序

    Problem 2277 Change Time Limit: 2000 mSec    Memory Limit : 262144 KB  Problem Description There is ...

  6. pom中配置的仓库无效的问题

    今天在用spring cloud的时候发现,配置的pom仓库一直无效(官网要求2.0版本直接从指定仓库里下).于是上网搜索,发现(http://18810098265.iteye.com/blog/2 ...

  7. 力扣(LeetCode)58. 最后一个单词的长度

    给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度. 如果不存在最后一个单词,请返回 0 . 说明:一个单词是指由字母组成,但不包含任何空格的字符串. 示例: 输入: &quo ...

  8. 学习笔记23—window10 64位 python2.7 安装liblinear

    最近在使用pythin,因为要使用libsvm,所以到官网去下载libsvm.官网地址为libsvm(https://www.csie.ntu.edu.tw/~cjlin/libsvm/)结果下载下来 ...

  9. jquery将表单序列化json对象

    $.fn.serializeObject = function () { var obj = {}; var count = 0; $.each(this.serializeArray(), func ...

  10. linux网络常用命令

    1,显示网桥 brctl show2,显示ip ip a3,查看openvswitch的配置信息 ovs-vsctl show4,显示网络命名空间 ip netns5,显示DHCP信息 ps -ef ...