首页 / 数据库 / MySQL / RMAN备份数据库后到另一台机器上恢复
1、源数据库端查询dbid和数据文件名 运行在归档模式下
select dbid from v$database;
select file#,name from v$datafile;
create pfile from spfile
select * from v$logfile;
rman 备份 之后关闭源数据库
2、在目标数据库上创建同样的实例名 数据库版本要一致
网络配置文件、口令文件、参数文件pfile、rman备份集(包括控制文件、数据文件备份集)、重做日志copy到相应目录下
3、目标数据库
启动到nomount: startup nomount pfile "xx"
rman target /
start nomount
set dbid=xxx (源数据库dbid)
restore controlfile from 备份集路径
alter database mount
restore database
recover database
alter database open :一致性恢复 或者 alter database open resetlogs;不一致恢复--------------------------------------推荐阅读 --------------------------------------RMAN 配置归档日志删除策略 http://www.linuxidc.com/Linux/2013-11/92670.htmOracle基础教程之通过RMAN复制数据库 http://www.linuxidc.com/Linux/2013-07/87072.htmRMAN备份策略制定参考内容 http://www.linuxidc.com/Linux/2013-03/81695.htmRMAN备份学习笔记 http://www.linuxidc.com/Linux/2013-03/81892.htmOracle数据库备份加密 RMAN加密 http://www.linuxidc.com/Linux/2013-03/80729.htm--------------------------------------分割线 --------------------------------------
备注:
如果目标数据库数据文件和源数据库文件路径不一样 则
run{
set newname for datafile 1 to"D:oradataocpSYSTEM01.DBF";
set newname for datafile 2 to"D:oradataocpUNDOTBS01.DBF";
set newname for datafile 3 to"D:oradataocpSYSAUX01.DBF";
set newname for datafile 4 to"D:oradataocpUSERS01.DBF";
set newname for datafile 5 to"D:oradataocpEXAMPLE01.DBF";
set newname for datafile 6 to"D:oradataocpHYGEIA01.DBF";
set newname for datafile 7 to"D:oradataocpHYGEIA02.DBF";
restore database;
switch datafile all;
} 拷贝redo到目标数据库到新的路径
alter database rename file "原" to "目的路径"
recover database;
alter database open :一致性恢复 或者 alter database open resetlogs;不一致恢复 更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址