返回顶部
首页 > 资讯 > 数据库 >Oracle Drop表如何进行purge恢复ODU
  • 766
分享到

Oracle Drop表如何进行purge恢复ODU

2024-04-02 19:04:59 766人浏览 独家记忆
摘要

这篇文章给大家介绍oracle Drop表如何进行purge恢复ODU,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Oracle Drop表(purge)恢复(ODU)通过O

这篇文章给大家介绍oracle Drop表如何进行purge恢复ODU,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Oracle Drop表(purge)恢复(ODU)

通过ODU恢复drop掉的表(purge)基本步骤如下

1:offline表所在表空间;

2:通过logminer挖出被drop表对应object_id

3:使用ODU工具将表数据抽到文件中;

4:使用sqlldr将数据加载到数据库;

5:验证;

一:主备测试数据              

1 创建测试表odu_test

create table odu_test (a number,b varchar2(10),c nvarchar2(30),d varchar2(20),e date,f timestamp,g binary_float,h binary_double);

2 插入测试数据

insert into odu_test

  select rownum,

         lpad('x', 10),

         'NC测试' || rownum,

         'ZHS测试' || rownum,

         sysdate + dbms_random.value(0, 100),

         systimestamp + dbms_random.value(0, 100),

         rownum + dbms_random.value(0, 10000),

         rownum + dbms_random.value(0, 10000)

    from dba_objects

   where rownum <= 10000;

commit;

3 备份并删除表odu_test,模拟误删除

create table odu1 as select * from odu_test;

drop table odu_test purge;

二:恢复

1 offline表所在表空间

alter tablespace users offline;

2 使用logminer来查找被drop表的object_id

select group#,status from v$log;

select member from v$logfile where group#=1;

sql> exec sys.dbms_logmnr.start_logmnr(options=>sys.dbms_logmnr.dict_from_online_catalog);

SQL> select scn,timestamp,sql_redo from v$logmnr_contents where operation='DDL' and sql_redo like '%odu_test%' order by 2 ;

......

    990001 2017/12/27  drop table odu_test purge;

SQL> select scn,timestamp,sql_redo from v$logmnr_contents where timestamp=to_date('2017-12-27','yyyy-mm-dd') order by 1;

SQL> create table logmnr_1 as (select * from  v$logmnr_contents;

SQL> exec sys.dbms_logmnr.end_logmnr;

select *from sys.logmnr_1 where scn='990001';  ---DATA_OB# 87270

select * from sys.logmnr_1 where LOWER(sql_redo) like '%odu_test%' order by 2 ;

3 修改原control.txt文件

select d.TS#        ts,

       d.FILE#      fno,

       d.FILE#      fno,

       d.NAME       filename,

       d.BLOCK_SIZE block_size

  from v$datafile d

 order by ts;

0    1    1    D:\APP\ADMINISTRATOR\ORADATA\CJC\SYSTEM01.DBF  8192

1    2    2    D:\APP\ADMINISTRATOR\ORADATA\CJC\SYSAUX01.DBF  8192

2    3    3    D:\APP\ADMINISTRATOR\ORADATA\CJC\UNDOTBS01.DBF 8192

4    4    4    D:\APP\ADMINISTRATOR\ORADATA\CJC\USERS01.DBF   8192

---control.txt

Oracle Drop表如何进行purge恢复ODU

4 登录odu

Oracle Drop表如何进行purge恢复ODU

Oracle Drop表如何进行purge恢复ODU

5 扫描数据

Oracle Drop表如何进行purge恢复ODU

---企业版ODU需要授权

Oracle Drop表如何进行purge恢复ODU

---本次实验使用测试版ODU

6 恢复表

Oracle Drop表如何进行purge恢复ODU

Oracle Drop表如何进行purge恢复ODU

......

Oracle Drop表如何进行purge恢复ODU

生成创建表的语句和控制文件

Oracle Drop表如何进行purge恢复ODU

这个命令生成了如下文件

ODU_0000087270.ctl和ODU_0000087270.sql

CREATE TABLE "ODU_0000087270"

(

    "C0001" NUMBER ,

    "C0002" VARCHAR2(4000) ,

    "C0003" NVARCHAR2(2000) ,

    "C0004" VARCHAR2(4000) ,

    "C0005" DATE ,

    "C0006" DATE ,

    "C0007" BINARY_FLOAT ,

    "C0008" BINARY_DOUBLE

);

7 online表空间

alter tablespace users online;

8 通过sqlldr加载数据

Oracle Drop表如何进行purge恢复ODU

9 验证数据

select count(*) from ODU_0000087270;  ---10000

查看恢复后表数据

select * from ODU_0000087270;

Oracle Drop表如何进行purge恢复ODU

......

查看备份表数据

Oracle Drop表如何进行purge恢复ODU

关于Oracle Drop表如何进行purge恢复ODU就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

您可能感兴趣的文档:

--结束END--

本文标题: Oracle Drop表如何进行purge恢复ODU

本文链接: https://lsjlt.com/news/65862.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Oracle Drop表如何进行purge恢复ODU
    这篇文章给大家介绍Oracle Drop表如何进行purge恢复ODU,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Oracle Drop表(purge)恢复(ODU)通过O...
    99+
    2024-04-02
  • RMAN如何恢复drop purge的表
    这篇文章主要介绍RMAN如何恢复drop purge的表,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!@ORA12C>  alter s...
    99+
    2024-04-02
  • Oracle中Drop,Delete,Truancate表恢复
    Oracle中Drop,delete,truancate表恢复oracle中,常常会由于一些失误导致表的删除,以下是我写的一些表恢复的方法。闪回模式得满足条件(启用闪回区和启用归档):1.检查是否...
    99+
    2024-04-02
  • ORACLE 12C使用RMAN进行表恢复
         在12C以前的版本中rman可以进行db,tablespace,datafile,block级别和TSPITR的恢复,12C引入了table级别的恢复在...
    99+
    2024-04-02
  • 怎样进行Oracle Delete表的恢复
    这篇文章将为大家详细讲解有关怎样进行Oracle Delete表的恢复,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Oracle Delete表恢...
    99+
    2024-04-02
  • MySQL中如何使用undrop来恢复drop的表
    小编给大家分享一下MySQL中如何使用undrop来恢复drop的表,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
  • 如何在Oracle中进行备份恢复测试
    在Oracle中进行备份恢复测试的步骤如下: 创建一个测试数据库:首先,在Oracle数据库中创建一个新的测试数据库,用于进行备...
    99+
    2024-04-09
    Oracle
  • 如何在MariaDB中对表进行备份和恢复
    在MariaDB中,可以使用mysqldump命令来对数据库表进行备份和恢复。以下是备份和恢复表的步骤: 备份表: 打开命令行窗口...
    99+
    2024-04-09
    MariaDB
  • 如何进行mongdb备份恢复
    如何进行mongdb备份恢复,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、物理备份(拷贝文件)#!/bin/sh DATE=`date...
    99+
    2024-04-02
  • oracle如何恢复删除的表
    在Oracle数据库中,可以使用以下方法来恢复被删除的表:1. 使用回滚段恢复:如果表被删除后,数据库未提交事务或者事务回滚未完成,...
    99+
    2023-08-23
    oracle
  • 如何在Oracle中进行数据库重建和恢复
    在Oracle数据库中进行数据库重建和恢复通常包括以下步骤: 备份数据库:在进行重建和恢复之前,务必要先备份数据库,以防止数据丢...
    99+
    2024-04-09
    Oracle
  • FreeBSD如何进行备份和恢复
    FreeBSD可以使用多种工具来进行备份和恢复,以下是一些常用的方法: 使用rsync命令进行备份和恢复: 备份:可以使用rs...
    99+
    2024-04-02
  • 如何进行Grafana的备份和恢复
    要备份Grafana,可以按照以下步骤进行: 备份Grafana的配置文件:在Grafana的安装目录下找到grafana.in...
    99+
    2024-04-02
  • 如何进行Zabbix的备份和恢复
    Zabbix的备份和恢复可以通过以下步骤实现: 备份Zabbix数据: 在Zabbix服务器上登录到命令行界面。 使用以下命令备份...
    99+
    2024-04-02
  • Oracle 12c如何使用RMAN备份对Non-CDB中的表按时间点进行恢复
    小编给大家分享一下Oracle 12c如何使用RMAN备份对Non-CDB中的表按时间点进行恢复,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起...
    99+
    2024-04-02
  • 如何进行MySQL断电恢复的分析
    本篇文章给大家分享的是有关如何进行MySQL断电恢复的分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 今天有个网友问我一个MySQL的恢...
    99+
    2024-04-02
  • 如何进行MySQL中的xtrabackup备份恢复
    这篇文章给大家介绍如何进行MySQL中的xtrabackup备份恢复,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。    XtraBackup是Percona推出...
    99+
    2024-04-02
  • Cassandra如何进行数据备份和恢复
    Cassandra是一个分布式数据库系统,具有高可用和容错能力。要对Cassandra进行数据备份和恢复,可以采取以下步骤: 数据备...
    99+
    2024-04-09
    Cassandra
  • 怎么进行oracle控制文件的恢复
    这篇文章将为大家详细讲解有关怎么进行oracle控制文件的恢复,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1重建控制文件SYS@hyyk> alte...
    99+
    2024-04-02
  • Oracle中怎么进行灾难恢复规划
    在Oracle数据库中进行灾难恢复规划是非常重要的,以下是一些步骤和建议: 确定业务需求:首先要确定业务对数据可用性和恢复时间的...
    99+
    2024-04-19
    Oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作