Home >Database >Mysql Tutorial >Oracle rman恢复到异地、异机

Oracle rman恢复到异地、异机

WBOY
WBOYOriginal
2016-06-07 16:43:53993browse

原来的Oracle数据库服务器使用rman进行全库的备份,然后再异地的服务器上恢复一模一样的数据库

原来的Oracle数据库服务器使用rman进行全库的备份,,然后再异地的服务器上恢复一模一样的数据库

1.1      原服务器备份数据库

第一步,查看数据库的实例名和DBID

connected to target database: DB3 (DBID=2060124769, not open)

第二步,进行全备份

backup AS COMPRESSED BACKUPSET database

include current controlfile format '/orabak/db_%d_%T_%s'

plus archivelog format '/orabak/arch_%d_%T_%s' ;

第三步,查看数据库文件的位置: /home/oracle/oradata/db3/

第四步,将备份文件arch_DB3_20140910_8和 db_ DB3_20140910_7复制异机上/home/oracle/orabak

1.2      目标服务器上创建数据库

第一步,创建实例名相同(db3),数据库文件的位置相同(/home/oracle/oradata/db3/)的数据库。

 第二步,关闭实例,启动到nomount状态。Sql>startup nomount;

 第三步,设置dbid和原数据库dbid相同

rman target/

Recovery Manager: Release 10.2.0.5.0 - Production on Thu Sep 11 19:53:50 2014

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: db3 (not mounted)

RMAN> set dbid 2060124769

executing command: SET DBID

 第四步,恢复控制文件

RMAN> restore controlfile from '/home/oracle/db_DB3_20140910_7';

Starting restore at 11-SEP-14

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: sid=153 devtype=DISK

channel ORA_DISK_1: restoring control file

channel ORA_DISK_1: restore complete, elapsed time: 00:00:05

output filename=/home/oracle/oradata/db3/db3/control01.ctl

output filename=/home/oracle/oradata/db3/db3/control02.ctl

output filename=/home/oracle/oradata/db3/db3/control03.ctl

Finished restore at 11-SEP-14

 

第五步,mount数据库

RMAN> alter database mount;

database mounted

released channel: ORA_DISK_1

 

第六步,注册从源数据库拷贝过来的备份集到rman中

RMAN> catalog start with '/home/oracle/orabak';

searching for all files that match the pattern /home/oracle/orabak

List of Files Unknown to the Database

=====================================

File Name: /home/oracle/orabak/arch_DB3_20140910_8

File Name: /home/oracle/orabak/db_DB3_20140910_7

Do you really want to catalog the above files (enter YES or NO)? yes

cataloging files...

cataloging done

 

第七步,恢复归档日志

RMAN> restore archivelog all;

Starting restore at 11-SEP-14

using channel ORA_DISK_1

archive log thread 1 sequence 6 is already on disk as file /oracle/product/10.2.0.5/dbs/arch1_6_857918757.dbf

channel ORA_DISK_1: starting archive log restore to default destination

channel ORA_DISK_1: restoring archive log

archive log thread=1 sequence=3

channel ORA_DISK_1: reading from backup piece /home/oracle/orabak/arch_DB3_20140910_1

channel ORA_DISK_1: restored backup piece 1

piece handle=/home/oracle/orabak/arch_DB3_20140910_1 tag=TAG20140910T172944

(注:如果不恢复归档日志,

RMAN> recover database;

Starting recover at 11-SEP-14

using channel ORA_DISK_1

starting media recovery

unable to find archive log

archive log thread=1 sequence=7)

 

第八步,恢复数据库文件(因为目标数据库和原数据库的数据文件位置相同,所以简单些)

RMAN> restore database;

Starting restore at 11-SEP-14

using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backupset restore

channel ORA_DISK_1: specifying datafile(s) to restore from backup set

restoring datafile 00001 to /home/oracle/oradata/db3/system01.dbf

restoring datafile 00002 to /home/oracle/oradata/db3/undotbs01.dbf

restoring datafile 00003 to /home/oracle/oradata/db3/sysaux01.dbf

restoring datafile 00004 to /home/oracle/oradata/db3/users01.dbf

channel ORA_DISK_1: reading from backup piece /home/oracle/orabak/db_DB3_20140910_6

channel ORA_DISK_1: restored backup piece 1

piece handle=/home/oracle/orabak/db_DB3_20140910_6 tag=TAG20140910T173540

 

第九步,恢复数据库

RMAN> recover database;

Starting recover at 11-SEP-14

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: sid=152 devtype=DISK

starting media recovery

media recovery complete, elapsed time: 00:00:03

Finished recover at 11-SEP-14

 

第十步,启动数据库

alter database open resetlogs;

--------------------------------------推荐阅读 --------------------------------------

RMAN 配置归档日志删除策略

Oracle基础教程之通过RMAN复制数据库

RMAN备份策略制定参考内容

RMAN备份学习笔记

Oracle数据库备份加密 RMAN加密

--------------------------------------分割线 --------------------------------------

本文永久更新链接地址:

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn