文档章节

RMAN学习过程之九,实战rman恢复之异机恢复

JAVA枪手
 JAVA枪手
发布于 2017/09/06 13:16
字数 1650
阅读 9
收藏 0
点赞 0
评论 0

初始设定:

假设两台服务器a和b(虽然我这儿只有一台,您就把它假装是两台吧),服务器A中运行的库sid为mydb,现在将它复制一份到服务器b

准备工作:

1 、记录下源数据库的DBID,DBID的获取方式上节讲过的。

2 、将源数据库的初始化参数文件,拷贝到目标服务器上。

3 、确认备份(含控制文件,数据文件,归档文件)有效,并已拷贝至目标服务器(没归档应该也可以,只要能确认数据文件和控制文件是一致备份。)

步骤:

1. 首先创建源库的全库备份,(由于只有一台机器,所以备份完之后,通过dbca删除源库,正式情况下务必要等备份库完全建立并正常运行之后才能决定是否要删除源库啊)。 前面讲了太多的备份,这里就不列详细的操作步骤了。本例中我创建了一个新库,并在库中建了一个tmp表,插入了4条记录。

2. 在目标服务器配置oracle_sid。

C:\Documents and Settings\Administrator>oradim -new -sid mydb

添加一个名为mydb的sid,由于是异机恢复,sid要与源库相同。

3. 连接到该sid

C:\Documents and Settings\Administrator> set oracle_sid=mydb

C:\Documents and Settings\Administrator>rman target /

恢复管理器: 版本9.2.0.1.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

已连接到目标数据库 (未启动)

RMAN>  set dbid 2543439098;

正在执行命令: SET DBID

RMAN> startup nomount;

启动失败: ORA-01078: failure in processing system parameters

LRM-00109: N^7(4r?*2NJ}ND<~ ¨F:\ORAHOME1\DATABASE\INITMYDB.ORA¨

正在尝试在没有参数文件的情况下启动 Oracle 例程...

Oracle  例程已启动

系统全局区域总计      97589952 字节

Fixed Size                      453312  字节

Variable Size                 46137344  字节

Database Buffers              50331648  字节

Redo Buffers                    667648  字节

4. 先恢复初始化参数文件

RMAN>  restore spfile to pfile ¨F:\ORAHOME1\DATABASE\INITMYDB.ORA¨ from ¨d:\backup\mydb\C-2543439098-20070720-02¨;

启动 restore 于 20-7月 -07

正在使用目标数据库控制文件替代恢复目录

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=9 devtype=DISK

通道 ORA_DISK_1: 已找到的自动备份: d:\backup\mydb\C-2543439098-20070720-02

通道 ORA_DISK_1: 从自动备份复原 SPFILE 已完成

完成 restore 于 20-7月 -07

然后使用刚刚创建的参数文件重新启动到未加载状态(注意,你最好打开该参数文件,看一下路径是否都确实存在,或者是否正确。)

RMAN>  startup force nomount pfile=¨F:\ORAHOME1\DATABASE\INITMYDB.ORA¨;

Oracle  例程已启动

系统全局区域总计     135338868 字节

Fixed Size                      453492  字节

Variable Size                109051904  字节

Database Buffers              25165824  字节

Redo Buffers                    667648  字节

5. 恢复控制文件并进入到加载状态

RMAN>  restore controlfile from ¨f:\backup\mydb\C-2543439098-20070720-01¨;

启动 restore 于 20-7月 -07

使用通道 ORA_DISK_1

通道 ORA_DISK_1: 正在恢复控制文件

通道 ORA_DISK_1: 恢复完成

正在复制控制文件

输出文件名=F:\ORAHOME1\ORADATA\MYDB\CONTROL01.CTL

输出文件名=F:\ORAHOME1\ORADATA\MYDB\CONTROL02.CTL

输出文件名=F:\ORAHOME1\ORADATA\MYDB\CONTROL03.CTL

完成 restore 于 20-7月 -07

RMAN>  alter database mount;

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of alter db command at 07/20/2007 17:44:22

ORA-01990:  打开口令文件¨F:\OraHome1\DATABASE\PWDmydb.ORA¨时出错

ORA-27041:  无法打开文件

OSD-04002:  无法打开文件

O/S-Error: (OS 2)  系统找不到指定的文件。

 

奇怪,我这里报错了,但再次执行加载,发现提供已经是加载状态了,报错不奇怪,奇怪的是报错了还能进加载,呵呵,不就是缺少密码文件嘛,不管它,一会儿恢复完了再重建,继续进行。

 

RMAN> alter database mount;

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of alter db command at 07/20/2007 17:44:51

ORA-01100:  数据库已安装

 

6. 修复数据库,我这里是源路径修复,如果你要恢复的文件地址与源库地址不同的话,需要通过SET NEWNAME FOR DATAFILE命令来为数据文件重新设定路径。

 

RMAN>  restore database;

启动 restore 于 20-7月 -07

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=11 devtype=DISK

通道 ORA_DISK_1: 正在开始恢复数据文件备份集

通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件

正将数据文件00001恢复到F:\ORAHOME1\ORADATA\MYDB\SYSTEM01.DBF

正将数据文件00002恢复到F:\ORAHOME1\ORADATA\MYDB\UNDOTBS01.DBF

正将数据文件00003恢复到F:\ORAHOME1\ORADATA\MYDB\DRSYS01.DBF

正将数据文件00004恢复到F:\ORAHOME1\ORADATA\MYDB\INDX01.DBF

正将数据文件00005恢复到F:\ORAHOME1\ORADATA\MYDB\TOOLS01.DBF

正将数据文件00006恢复到F:\ORAHOME1\ORADATA\MYDB\USERS01.DBF

正将数据文件00007恢复到F:\ORAHOME1\ORADATA\MYDB\XDB01.DBF

通道 ORA_DISK_1: 已恢复备份段 1

段 handle=D:\BACKUP\MYDB\03INAL1I_1_1 tag=TAG20070720T162417 params=NULL

通道 ORA_DISK_1: 恢复完成

完成 restore 于 20-7月 -07

 

 

7. 恢复数据库

RMAN>  recover database;

启动 recover 于 20-7月 -07

使用通道 ORA_DISK_1

正在开始介质的恢复

通道 ORA_DISK_1: 正在启动到默认目标的存档日志恢复

通道 ORA_DISK_1: 正在恢复存档日志

存档日志线程 =1 序列=10

通道 ORA_DISK_1: 已恢复备份段 1

段 handle=D:\BACKUP\MYDB\04INAL2V_1_1 tag=TAG20070720T162503 params=NULL

通道 ORA_DISK_1: 恢复完成

存档日志文件名 =F:\ORAHOME1\ORADATA\MYDB\ARCHIVE\1_10.DBF 线程 =1 序列 =10

无法找到存档日志

存档日志线程 =1 序列=11

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of recover command at 07/20/2007 17:50:36

RMAN-06054: media recovery requesting unknown log: thread 1 scn 143893

 

 

报错了,但是没关系,并非严重错误,只是提醒你恢复到一个未知的scn号。如果要避免这个错误,可以在alter database mount之后,通过set until scn或者set until time命令设置恢复到的scn号或时间。

8. 然后通过open resetlogs方式打开数据库

RMAN>  alter database open resetlogs;

数据库已打开

 

呵呵,成功打开,这是个好消息,我们需要连接到数据库来验证一下。

C:\Documents and Settings\Administrator>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on  星期五 7月 20 17:55:24 2007

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

SQL> conn system/manager

已连接。

SQL> select *from tmp;

COL

--------------------------------------------------

11111

22222

33333

44444

SQL>

 

 哈哈,成功啦。剩下的工作就简单了,你即可以通过dbca配置数据库,也可以通过orapwd命令重建密码文件等等

 

© 著作权归作者所有

共有 人打赏支持
JAVA枪手
粉丝 7
博文 84
码字总数 15221
作品 0
东城
高级程序员
Oracle备份和恢复(RMAN篇)

前言:欢迎加QQ交流1445696451微博地址http://blog.51cto.com/13434336 ~ ~ ~ ~ ~ ~ ~分割 ~ ~ ~ ~ ~ ~ 数据库备份与恢复是数据库管理员必须掌握的。没有任何系统能免遭硬盘物理损坏、粗心用...

张晨chat ⋅ 06/03 ⋅ 0

Oracle 11g R2 Rman、数据泵、闪回备份与恢复

Oracle 11g R2 Rman备份 备份与恢复的定义及分类 备份的定义及分类: 从物理与逻辑的角度来分类: 从物理与逻辑的,备份可以分为物理备份和逻辑备份。 物理备份:对数据库操作系统的物理文件...

Love小敏 ⋅ 06/14 ⋅ 0

ORACLE不完全恢复的几种情况

ORACLE不完全恢复的几种情况 1、介绍 RMAN不完全恢复的三个标准模式:基于time、基于scn和基于sequence,与手工不完全恢复相比原理类似,语法稍有不同: 2、不完全恢复的几种情况 ### 1)不完...

持续高温 ⋅ 04/22 ⋅ 0

通过RMAN创建dataguard(原创)

环境介绍:数据库版本10G,两个节点分别是rednum1(192.168.212.128)和rednum2(192.168.212.130) 主库主机名称是rednum1,从库主机名称是rednum2 配置步骤如下: 1、在主库和从库配置tnsnames如...

denti ⋅ 06/04 ⋅ 0

RMAN 中delete exipired 和 delete obsolete 的区别

elete expired If you run CROSSCHECK, and if RMAN cannot locate the files, then it updates their records in the RMAN repository to EXPIRED status. You can then use the DELETE EXP......

1321385590 ⋅ 04/19 ⋅ 0

ORA-01578和ORA-26040--NOLOGGING操作引起的坏块-错误解释和解决方案

(一)NOLOGGING操作引起的坏块(ORA-01578和ORA-26040)简介 如果只是错误ORA-01578,而没有伴随ORA-26040,那么这个坏块是由其它的原因引起的坏块,可以尝试使用RMAN的BMR(Block Media R...

lhrbest ⋅ 04/16 ⋅ 0

举一反三:跨平台版本迁移之 XTTS 方案操作指南

跨平台跨版本迁移方案对比 针对跨平台跨版本的迁移,主要有以下三种方式:数据泵、GoldenGate / DSG、XTTS,针对停机时间、复杂度、实施准备时间,做了以下列表比对: 客户的需求都是最短停机...

技术小能手 ⋅ 04/23 ⋅ 0

shell判断oracle主备数据库备份脚本

1. 脚本如下 说明:按照客户要求,在主备数据库上同时部署脚本,自动判断是否是主库,如果是主库则进行备份,备库不需要备份,记录日志为备份库即可,以下脚本仅供参考,可以进一步优化。 脚...

roidba ⋅ 05/24 ⋅ 0

将过期或未注册到控制文件 RMAN 激活或注册到控制文件

RMAN备份集显示已过期 重新注册 CATALOG BACKUPPIECE '/backup/oraclebk/archivelog/archivelog.20180516.dft30rbg11.rman'; RMAN显示备份集为可用状态 注:CATALOG BACKUPPIECE 命令还可以往......

1321385590 ⋅ 05/18 ⋅ 0

非常规方法,轻松应对Oracle数据库危急异常

相信很多ORACLE DBA在职业生涯中或多或少都遇到过这样的情况:数据文件被误删了,存储坏了无法识别数据文件,最糟糕的是,竟然rman备份也是坏的…… 遇到问题凌乱慌张是没用的,而贸然动手也...

唐小丹、周凯 ⋅ 2016/04/08 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Centos7重置Mysql 8.0.1 root 密码

问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码;找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql vim /etc/my.cnf 1...

豆花饭烧土豆 ⋅ 59分钟前 ⋅ 0

熊掌号收录比例对于网站原创数据排名的影响[图]

从去年下半年开始,我在写博客了,因为我觉得业余写写博客也还是很不错的,但是从2017年下半年开始,百度已经推出了原创保护功能和熊掌号平台,为此,我也提交了不少以前的老数据,而这些历史...

原创小博客 ⋅ 今天 ⋅ 0

LVM讲解、磁盘故障小案例

LVM LVM就是动态卷管理,可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理。 1.新建分区,更改类型为8e 即L...

蛋黄Yolks ⋅ 今天 ⋅ 0

Hadoop Yarn调度器的选择和使用

一、引言 Yarn在Hadoop的生态系统中担任了资源管理和任务调度的角色。在讨论其构造器之前先简单了解一下Yarn的架构。 上图是Yarn的基本架构,其中ResourceManager是整个架构的核心组件,它负...

p柯西 ⋅ 今天 ⋅ 0

uWSGI + Django @ Ubuntu

创建 Django App Project 创建后, 可以看到路径下有一个wsgi.py的问题 uWSGI运行 直接命令行运行 利用如下命令, 可直接访问 uwsgi --http :8080 --wsgi-file dj/wsgi.py 配置文件 & 运行 [u...

袁祾 ⋅ 今天 ⋅ 0

JVM堆的理解

在JVM中,我们经常提到的就是堆了,堆确实很重要,其实,除了堆之外,还有几个重要的模块,看下图: 大 多数情况下,我们并不需要关心JVM的底层,但是如果了解它的话,对于我们系统调优是非常...

不羁之后 ⋅ 昨天 ⋅ 0

推荐:并发情况下:Java HashMap 形成死循环的原因

在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历...

码代码的小司机 ⋅ 昨天 ⋅ 2

聊聊spring cloud gateway的RetryGatewayFilter

序 本文主要研究一下spring cloud gateway的RetryGatewayFilter GatewayAutoConfiguration spring-cloud-gateway-core-2.0.0.RC2-sources.jar!/org/springframework/cloud/gateway/config/G......

go4it ⋅ 昨天 ⋅ 0

创建新用户和授予MySQL中的权限教程

导读 MySQL是一个开源数据库管理软件,可帮助用户存储,组织和以后检索数据。 它有多种选项来授予特定用户在表和数据库中的细微的权限 - 本教程将简要介绍一些选项。 如何创建新用户 在MySQL...

问题终结者 ⋅ 昨天 ⋅ 0

android -------- 颜色的半透明效果配置

最近有朋友问我 Android 背景颜色的半透明效果配置,我网上看资料,总结了一下, 开发中也是常常遇到的,所以来写篇博客 常用的颜色值格式有: RGB ARGB RRGGBB AARRGGBB 这4种 透明度 透明度...

切切歆语 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部