博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于系统崩溃后的Oracle恢复
阅读量:4072 次
发布时间:2019-05-25

本文共 851 字,大约阅读时间需要 2 分钟。

昨天客户叫我过去帮个忙,说是数据库坏掉了,看能不能帮助恢复,看他一脸期盼的样子我给他过去看了一下(客户以为我是高手,其实我很菜的啦),后来听说,由于他偷懒,两个月以来都没有备份数据(我晕,这家伙难道不怕下岗?)。

上去看了一下情况,发现情况还是比较好的,由于客户的Rad5坏了一块,客户在build的过程中又坏了一块,最后没有办法只好找数据恢复的公司来进行数据恢复,恢复过来后发现操作系统不能用了,但是数据库文件还存在。

我用了以下办法恢复数据:

1、找一台没有装过Oracle的机器,按照客户原有的安装配置安装Oracle。(包括表空间创建和用户创建)

2、停止所有Oracle服务(2000/xp),改自动为手动(这个可作可不做,只要服务停了就行)。

3、用恢复过来的数据库文件覆盖刚刚安装的数据库文件。

4、用恢复过来的admin目录下的文件覆盖刚刚安装好的admin目录下文件。

重新启动数据库,发现服务可以起来,但是数据库没有起来,用企业管理器察看,说是数据库没有起来。

5、接下来进入命令行 输入命令 sqlplus "/nolog as sysdba"

6、输入命令 shutdown immediate;

卸载数据库成功

7、输入命令 startup mount

最后命令行界面提示了一些问号,另外带了一个文件名称,看样子是这个文件没有覆盖造成的,一看我就晕了,这好像是pwd文件嘛!!!

8、停止服务

用恢复的pwd和init文件覆盖新装的文件pwd和init文件(oracle安装目录/ora90/database)

9、重新启动服务,发现问题解决了

结论:在弄得过程中走了很多弯路,最后才弄成,分析原因是对Oracle的文件结构不够熟悉造成的,这个东西看来还是要多操作多练习,熟能生巧嘛,另外,理论学习还是必不可少的。

另外:如果磁盘坏掉的时机正好是Oracle在进行数据写入的情况的话,在这种情况下可能会造成数据文件的物理损坏,这种损坏好像是无法恢复的,只能通过重做日志来恢复。

转载地址:http://wuwni.baihongyu.com/

你可能感兴趣的文章
mongodb管理与安全认证
查看>>
nodejs内存控制
查看>>
nodejs Stream使用中的陷阱
查看>>
MongoDB 数据文件备份与恢复
查看>>
MongoDB数据库插入、更新和删除操作详解
查看>>
MongoDB文档(Document)全局唯一ID的设计思路
查看>>
mongoDB简介
查看>>
Redis持久化存储(AOF与RDB两种模式)
查看>>
memcached工作原理与优化建议
查看>>
Redis与Memcached的区别
查看>>
程序员最核心的竞争力是什么?
查看>>
linux CPU个数查看
查看>>
分布式应用开发相关的面试题收集
查看>>
简单理解Socket及TCP/IP、Http、Socket的区别
查看>>
利用HTTP Cache来优化网站
查看>>
利用负载均衡优化和加速HTTP应用
查看>>
消息队列设计精要
查看>>
分布式存储系统设计(1)—— 系统架构
查看>>
MySQL数据库的高可用方案总结
查看>>
常用排序算法总结(一) 比较算法总结
查看>>