oracle数据库常见故障情况数据恢复分析

一、Oracle启动后无法工作或者数据库无法启动

一旦数据库出现无法启动的情况,首先需要检查system表是否为未损坏状态,通常情况而言,如果system表未被损坏那么很容易进行数据恢复,如果system表已经被损坏,那么就需要数据恢复工作人员手动对表结构进行分析核对,这样数据恢复的周期就相对较长,但是数据恢复成功率依然较高,不用担心数据恢复失败。

二、Oracle 数据库的ASM存储受到损坏

这种故障情况通常是因为ASM的部分设备故障或者由于ASM重置等原因导致的数据库数据丢失。出现这种情况后需要确定在故障后有无大量的数据写入,通常情况下如果没有继续对数据库写入大量数据的情况是都可以进行数据恢复。因此也要引起注意的一点是,一旦oracle数据库出现这类故障后需要尽可能的避免在设备中写入数据,以免破坏原有数据。

三、数据库误删除、误格式化及其他数据文件丢失

Oracle数据库由于误格式化、误删除以及其他误操作导致数据库内的数据丢失后,切记不要对误操作后的数据库进行写入数据的操作。如果在数据丢失后未写入数据的情况下,无论任何操作系统我们都可以通过数据库的组织规则对数据库进行完整恢复,唯一的缺点是需要恢复者手动核对数据文件名称。

四、Oracle数据文件部分损坏和dump文件损坏

如果oracle数据文件部分损坏,想要进行数据恢复就需要专业的数据恢复从业者进行数据的提取和重组才可以进行恢复,且数据恢复时间较长。
Oracle dump文件损坏情况下,将损坏部分去除,其余部分均可以正常追加至数据表。

数据库数据恢复建议

如果是因为软件原因导致的数据丢失,在数据丢失后应该在第一时间内尽最大可能的避免对存储做过多操作并及时镜像数据。如果是由于硬件故障导致的数据丢失则需要避免对硬件设备加电尝试,以免进一步损坏设备增加数据恢复的难度。

原文地址:https://blog.51cto.com/sun510/2400957

时间: 2024-08-05 23:23:43

oracle数据库常见故障情况数据恢复分析的相关文章

Oracle数据库常见错误总结(一)

实际项目实践过程中,经常会遇到一些形如"ORA-XXXX"的Oracle错误提示,此时,我们便会打开百度.Google,搜索相关技术解决方案.本系列博文的目的就在于,对常见的Oracle错误提示进行总结,不断完善. ORA-12560 ORA-12560: TNS: protocol adapter error(SQLPLUS) ORA-27101: shared memory realm does not exist(PL/SQL Developer) (1)原因分析 在path环境

ORACLE数据库不同故障下的恢复总结

ORACLE数据库不同故障下的恢复总结1. 非归档模式下丢失或损坏的文件--1.1 数据文件--启动数据库的状态到MOUNT--恢复方法:通过之前创建的数据库完整备份,修复整个数据库,不过备份之后发生的所有修改将丢失:修复数据库之后不需要进行RECOVER操作.(由于没有归档,也无从RECOVER),直接通过RESETLOGS方式打开数据库即可. --1.2 数据文件及联机重做日志文件--启动数据库的状态到MOUNT--恢复方法(同上):通过之前创建的数据库完整备份,修复整个数据库,不过备份之后

Oracle数据库XXE注入漏洞(CVE-2014-6577)分析

在这篇文中,我们将共同分析一下Oracle数据库的XXE注入漏洞(CVE-2014-6577),Oracle公司1月20日发布了针对该漏洞的相关补丁. 有关XXE的相关知识,可以查看安全脉搏站内的另一篇文章<未知攻焉知防--XXE漏洞攻防>. 漏洞描述 Oracle数据库的XML解析器模块容易受到XML外部实体(XML External Entity , XXE)注入. 受影响版本:11.2.0.3, 11.2.0.4, 12.1.0.1 和12.1.0.2 所需权限:创建会话(CREATE

Oracle数据库锁管理及锁分析_超越OCP精通Oracle视频课程培训10

Oracle视频教程目标 Oracle视频教程,风哥本套oracle教程培训学习熟悉锁的概念,介绍导致阻塞的原因,数据库死锁的检查方法,死锁模拟与死锁问题处理操作命令 适用人群 IT相关从业人员.Oracle数据库技术人员.想加工资的.想升职的都可以. 视频在线学习地址: http://edu.51cto.com/course/course_id-6545.html Oracle视频教程简介 Oracle视频教程,风哥本套oracle教程培训学习熟悉锁的概念,介绍导致阻塞的原因,数据库死锁的检查

如何解决oracle数据库过期的情况

之前用的数据库都是开源的,在另一台电脑上安装的时候,居然有时间限制,只能用30天.安装了好多次都是这样,就这样,三十天一破解.破解方法如下: 不管是快要过期了还是已经过期了,都可以用这个方法. 1.在“运行”中输入regedit,回车打开注册表. 2.在注册表里按HKEY_CURRENT_USER\Software这个路径找到“Allround Automations ”,删除它. 3.删除上一步中的后,在找到HKEY_CURRENT_USER\Software\Microsoft\Securi

一次vm 虚拟机时间倒流而导致的oracle 数据库启动故障

本文是原创文章,若转载请注明出处: http://blog.csdn.net/msdnchina/article/details/38782163 直接上数据库的alert日志: Fri Apr 25 22:00:54 2014 <-----注意该时间 Archived Log entry 1766 added for thread 1 sequence 1770 ID 0x4e0785c3 dest 1: Sun Sep 02 23:04:52 2012 <-----注意该时间 Starti

Oracle数据库常见的误操作恢复方法(上)

实验环境:Linux6.4 + Oracle 11g 面向读者:Oracle开发维护人员 本文以Oracle自带的scott用户进行演示: 首先逻辑备份导出scott的对象数据 $ exp scott/tiger file='/u01/app/backup/scott.dmp' log='/u01/app/backup/scott.log' owner=scott; 1.误操作drop了emp表 利用表级闪回恢复,只要回收站中有就可以恢复. SQL> drop table emp; Table

2018.6.10 Oracle数据库常见的错误汇总

1.ClassNoFoundException 找不到注册驱动 可能原因:1>驱动名称不对 2>没有导入数据库驱动包 2.SQl 语句中可以使用任何有效的函数,函数操作的列,必须指定别名,否则会出现 java.sql.SQLException: 列名无效 3.java.sql.SQLException: 无效的列索引: sql串里面?号的数目和提供的变量数目不一致 4.java.sql.SQLException: 结果集已耗尽 操作结果集的时候结果集的指针指向了结果集之外 例如:rs.befo

oracle数据库常见的报错

 (1)报错 >>> Ignoring required pre-requisite failures. Continuing... Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-01-21_06-07-35PM. Please wait ...[[email protected] database]$ Exception in thread "main" java.la