第46章 执行数据库恢复

第46章 执行数据库恢复

第46章 执行数据库恢复
2018-08-14

目标:
·确定是否需要执行恢复
·访问不同的界面(如em和命令行)
·描述并使用可用的选项,如RMAN和数据库恢复向导
·对以下文件执行恢复
控制文件
重做日志文件
数据文件

打开数据库
打开数据库必须要满足一下条件
所有控制文件都必须存在且已同步
所有联机数据文件都必须存在且已同步
每个重做日志组必须至少有一个成员存在
·打开数据库后,如果丢失以下项时数据库就会失败
任何控制文件
属于系统或还原表空间的数据文件
整个重做日志组
(只要组中有一个成员可用,实例就会保持在打开状态)

Data Recovery Advisor数据恢复指导
·快速检测、分析和修复故障
·停机和运行时的故障
·将对用户的干扰降到最低
·用户界面
Enerprice Manager
GUI
RMAN
·支持的数据库配置
单实例
非RAC
支持故障转移到备用数据库,但不支持分析和修复备用数据库

丢失了控制文件
如果控制文件丢失或者损坏、实例通常会终止
·如果控制文件存储在ASM磁盘组中,这恢复方案如下
1 使用Enterorise Manager执行指导式恢复
2 将数据库置于NOMOUNT模式,然后使用RMAN命令从现有控制文件恢复控制文件
RMAN> restore controlfile from
+DATA/orcl/controlfile/current.260.695209463′ ;
·如果控制文件存储为常规文件系统文件,则:
1 关闭数据库
2 复制现有的控制文件来替代丢失的控制文件
成功恢复控制文件后,打开数据库

控制文件丢失
1.部分丢失
关闭数据库
复制存在的给丢失的
启动数据库

实例启动阶段
复制给丢失的
alter database mount;
alter database open;

2.全部丢失
a.利用备份恢复
b.利用脚本重建控制文件

日志文件丢失
UNUSED INACTIVE –>
alter database clear logfile group <>;
ACTIVE –>
alter system chechpoint;
alter database celear logfile group <>;
CURRENT –>
alter system wsitch logfile;
alter system checkpoint;
alter database clear logfile group <>;
查看日志文件的状态
select member from v$logfile;
select group#,status from v$log;

用RMAN做数据库备份
用RMAN做数据恢复,一定要提前有备份
[oracle@wyzc ~]rman target /
RMAN> backup database;

1.丢失情况是system undo丢失
shutdown immediate
shutdown abort
startup mount
restore datafile <>;
recover database;
alter database open;

2.其他数据文件丢失
首先在RMAN里面执行sql指令
run{

sql ‘alter tablespace <> offline immediate’;
restore tablespace <>;
recover tablespace <>;
sql ‘alter tablespace <> online’;
}
这里的restore和recover
restore是使用以前的备份文件恢复到数据库崩溃之前的某个状态
recover是从备份状态开始,使用redo日志和归档日志,从备份的那个状态到数据库崩溃的状态之间的数据库操作重新做一遍,直到数据库宕机之前
这样就保证了数据库一点不差的被恢复起来了
因此将restore翻译为还原,recover翻译为恢复比较好
这两个词的博客原文解释
https://blog.csdn.net/chagaostu/article/details/19549279

转载于:https://www.cnblogs.com/tudousix/p/9480253.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/101489.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Xshell安装docker「建议收藏」

    Xshell安装docker「建议收藏」docker基本组成镜像(image):docker镜像好比一个模板,可以通过这个模板创建容器服务,例如:tomcat镜像===>run===>tomcat01容器(提供服务器)通过这个镜像可以创建多个容器(最终服务或项目在容器中运行)容器(container):docker利用容器技术,独立运行一个或一组应用,通过镜像来创建。启动、停止、删除基本命令目前就可以把这个容器理解为就是一个简易的linux系统仓库(repository):存放镜像的地方,类似maven中央仓库仓库

  • js 长轮询_websocket挂载到vue上

    js 长轮询_websocket挂载到vue上引入Web端即时通讯技术:即时通讯技术简单的说就是实现这样一种功能:服务器端可以即时地将数据的更新或变化反应到客户端,例如消息即时推送等功能都是通过这种技术实现的。但是在Web中,由于浏览器的限制,实现即时通讯需要借助一些方法。这种限制出现的主要原因是,一般的Web通信都是浏览器先发送请求到服务器,服务器再进行响应完成数据的现实更新。实现Web端即时通讯的方法:实现即时通讯主要有四种方式,它们分别…

    2022年10月14日
  • cJSON的使用方法

    cJSON的使用方法首先,要介绍一下什么是json格式。一.JSON格式简述JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript(StandardECMA-2623rdEdition-December1999)的一个子集。JSON采用完全独立于语言的文本格式,但

  • WSGI、Flask及Werkzeug三者之间的关系

    WSGI、Flask及Werkzeug三者之间的关系目录一、WSGI是什么?二、Werkzeug是什么三、Flask的WSGI实现一、WSGI是什么?WSGI是一套接口规范。一个WSGI程序用以接受客户端请求,传递给应用,再返回服务器的响应给客户端。WSGI程序通常被定义成一个函数,当然你也可以使用类实例来实现。下图显示了python中客户端、服务器、WSGI、应用之间的关系:从下往上开始介绍:客户端:浏览器或者app。web服务器:Web服务器是指驻留于因特网上某种类型计算机的程序。当Web浏览器(客户端)连到服务.

  • PyCharm使用技巧:查找 替换[通俗易懂]

    PyCharm使用技巧:查找 替换[通俗易懂]文件内部的字符的查抄替换。首先ctrl+F:然后ctrl+R:点击后就能把文件里包含的都替换掉。另外,这个能让你只选择单词。

  • phpstorm激活码2021。3[在线序列号]

    phpstorm激活码2021。3[在线序列号],https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号