oracle对查询结果求和_某国企Oracle数据库误truncate table恢复案例
【故障情况概述】
北京某国企客户 Oracle 11g R2 数据库误truncate table CM_CHECK_ITEM_HIS,表数据丢失,业务查询到该表时报错,此时发现数据库的备份不能用,表数据无法查询。Oracle 11g R2 数据库误truncate table CM_CHECK_ITEM_HIS,表数据丢失,业务查询到该表时报错,此时发现数据库的备份不能用,表数据无法查询。Truncate数据的机理是,ORACLE会在数据字典和Segment Header中更新表的Data Object ID,而实际数据部分的块则不会做修改。由于数据字典与段头的DATA_OBJECT_ID与后续的数据块中的并不一致,所以ORACLE服务进程在读取全表数据时不会读取到已经被TRUNCATE的记录,但是实际仍未被覆盖的数据。
【北亚数据恢复过程】
为保护用户数据,本文档构造与客户相同的故障。Scott用户创建表emp1,复制emp表,连续复制多次,总记录数为:7340032条。truncate表emp1,之后没有进行任何操作。查询该表,数据库中该表的记录为0条。如图一所示:
图一
注: Os:win server 2008R2。数据库版本:win_oracle_11.2.0.1_x64;
1 对system表空间文件进行分析,找到truncate表的原始数据所在的位置
图二
2 解析表所在的数据文件数据库,找到truncate的数据
3 将truncate的数据库插入到数据库中
通过解析system01.dbf文件,找到truncate的数据所在的位置,找到被删除的数据。解析表所在的数据文件,将truncate的数据插入到数据库中。在数据库中,查找被truncate,发现数据回来了,直接备份数据。
图三
Exp导出scott用户;
图四
【北亚数据恢复结果】
数据恢复成功
oracle对查询结果求和_某国企Oracle数据库误truncate table恢复案例相关推荐
- Oracle 数据库误truncate table恢复过程
北京某国企客户 Oracle 11g R2 数据库误truncate table CM_CHECK_ITEM_HIS,表数据丢失,业务查询到该表时报错,此时发现数据库的备份不能用,表数据无法查询. 客 ...
- oracle表还原truncate,Oracle数据库执行truncate table操作后如何逆向恢复之前的状态...
概述:北京某国企客户 Oracle 11g R2 数据库误truncate table CM_CHECK_ITEM_HIS,表数据丢失,业务查询到该表时报错,此时发现数据库的备份不能用,表数据无法查询 ...
- oracle查询前几名,Oracle子查询前1名的结果(Oracle subquery top 1 result)
Oracle子查询前1名的结果(Oracle subquery top 1 result) 我想为b的每个唯一值得到最高的1行,最小值为c的那个特定值. 即使可以有超过1行具有相同的最小值(只需选择第 ...
- oracle对查询结果求和_oracle基础知识分享
原文链接:https://page.om.qq.com/page/OO2PXCD6VZ6CVqLqjpU6uShg0 以下是本人整理的ORACLE学习的一些基本的语法知识,如有不对的地方,望大家批评指 ...
- oracle对查询结果求和_Oracle 闪回技术详解
概述 闪回技术是Oracle强大数据库备份恢复机制的一部分,在数据库发生逻辑错误的时候,闪回技术能提供快速且最小损失的恢复(多数闪回功能都能在数据库联机状态下完成).需要注意的是,闪回技术旨在快速恢复 ...
- oracle中如何格式化输出,【学习笔记】数据库日期时间格式化输出案例
天萃荷净 分享一篇关于开发DBA在工作中常用到的日期时间格式化输出方法案例,含:mysql.sql server.oracle 3种数据库日期时间格式化输出 1.mysql数据库时间格式化输出 DAT ...
- mql 查询多结果_详解Oracle分页查询概念、缘由及如何实现
概述 很多朋友都不太理解为什么要去分页查询,今天主要用一个简单实例来解释下Oracle数据库的分页查询... 分页查询概念 分页查询就是把query到的结果集按页显示.比如一个结果集有1W行,每页按1 ...
- oracle将查询结果声明为伪表,Oracle查询操作(增删改查,伪表,高级查询)实例讲解...
SQL查询操作:增删改查 一.SQL操作符 算术操作符 + - * / 比较操作符 = != < > <= >= BETWEEN--AND IN LINK IS NULL 逻辑 ...
- oracle命令未正确结束_详解Oracle数据库终止正在进行expdp导出数据的正确操作
概述 今天在做expdp导出时因没预估好数据量,所以需终止正在进行expdp导出数据的任务.那么怎么正确停止expdp导出任务呢?下面介绍一下我的操作过程. 1.不能用ctrl+c来终止导出(演示) ...
最新文章
- 基于JSP实现OA办公系统
- 使用RDLC报表向报表传入参数
- ***PHP 遍历数组的方法foreach
- fgo服务器维护补偿什么时候才有,fgo国服4月12日版本版本更新公告 维护18个小时 补偿18个圣晶石...
- 第四范式祝大家 HAPPY NIU YEAR!
- 【最新合集】编译原理习题(含答案)_15运行存储分配_MOOC慕课 哈工大陈鄞
- shell 判断字符串是否存在包含关系
- MyEclipse web项目导入Eclipse,详细说明
- 物联网开发者被疯抢,华为做了什么?
- css转化成stylus,stylus
- 服务器主板测试工程师的项目,重视经验,人才紧缺—硬件测试工程师
- android 缓存程序,Android轻量缓存框架--ASimpleCache
- NRF52840 NRF52833 nRF5 SDK 开发
- uniapp本地存储
- Java HotSpot VM参数大全
- k3导入账套_K3金蝶维护绝密(内部技术教程)
- 前端基础入门之css表格与表单
- 2022软件测试常见抓包工具
- OSW工具-Oracle的OS watcher
- 题目:953.验证外星语词典