Oracle 数据库11g 如何恢复表数据

作者:郑德鼎 约 4 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, Data Engineering, MM, PP, Software Engineering, 开发, 数据工程, 物料管理, 生产, 软件工程
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

**· Oracle数据库11g如何恢复表数据 ·**

Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

**生产环境误(Oracle 11g)删除表数据之后怎么办,冷静对应,不需要跑路!**

**首先要看删除数据的方式,是delete还是truncate。**

** 区别点 ** | ** truncate ** | ** delete **

---|---|---

** 执行速度 ** | ** 极快 ** | ** 慢 **

** 命令分类 ** | ** DDL(数据定义语言) ** | ** DML(数据操作语言) **

** 删除对象 ** | ** 表数据 ** | ** 表数据 **

** where句 ** | ** 不可使用 ** | ** 可使用 **

**回滚** | ** 不可回滚 ** | ** 可回滚 **

** 恢复方法 ** | ** Fy_recover_data工具包 ** | ** 使用flashback命令回滚 **

** 恢复限制 ** | ** 如果truncate后又有新数据写入则彻底无法恢复, ** **

** ** 表数据文件块被覆盖则无法恢复完整数据。 ** | ** DB参数DB_FLASHBACK_RETENTION_TARGET控制恢复时间范围,默认值24小时。 **

**Delete的对应较为简单,使用flashback命令可以恢复到24小时之内任何时间点的状态。**

1.赋予要恢复的表恢复权限

alter table xla.xla_ae_lines enable row movement

2.使用flashback恢复表数据到某一时间点,通常24小时之前的数据将无法恢复

flashback table xla.xla_ae_lines TO TIMESTAMP to_timestamp ('2013-09-10

14:00:00','yyyy-mm-dd hh24:mi:ss')

Truncate的对应则较为麻烦。

1.首先要导入Fy_recover_data工具包,这个包是oracle内部人员使用,未正式公开。

下载地址: http://www.hellodba.com/Download/FY_Recover

**创建测试表,将其truncate掉**

Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

导入下载的FY_Recover_Data.pck包

Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

**开始执行恢复,输入参数schema,table_name**

Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

**从上面的记录中,可以看到表被恢复为sys.test$$**

Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

**之后将恢复出来的数据插入test表中即可**

Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

**总结,尽量不要使用truncate删除数据,生产环境更新数据时规范的作业流程必不可少。**

Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

**END**

Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图
Oracle 数据库11g 如何恢复表数据 - 封面图

作者 / 章硕吉

审核 / 陈 兴

编辑 / 王 锐

郑德鼎

关于作者:郑德鼎

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「Oracle数据库11g如何恢复表数据.md」整理生成,仅用于内部技术分享与学习交流。