首页 > 数据库 >恢复oracle数据库DROP表误删除的数据 注意此时的表名称已经被重新命名,table_name和object_name就是回收站中的存放表名。

恢复oracle数据库DROP表误删除的数据 注意此时的表名称已经被重新命名,table_name和object_name就是回收站中的存放表名。

时间:2023-07-07 16:11:59浏览次数:47  
标签:误删除 object name DROP 表名 table 回收站

恢复oracle数据库DROP表误删除的数据 注意此时的表名称已经被重新命名,table_name和object_name就是回收站中的存放表名。
https://blog.csdn.net/qq_34253619/article/details/124434357

数据恢复方法的原理是因为oracle数据库在删除表时会将删除信息存放于某虚拟“回收站”中而非直接清空,再此种状态下数据库标记该表的数据库为“可以复写”,所以在该块未被重新使用前依然可以恢复数据。该方法多用于drop删除。

首先需要查询user_table视图找到被删除的表:

· select table_name,dropped from user_tables

· select object_name,original_name,type,droptime from user_recyclebin

注意此时的表名称已经被重新命名,table_name和object_name就是回收站中的存放表名。

(1)如果管理员此时可以明确原表的名称或者原表只DROP过一次表,执行如下sql:

        flashback table 原表名 to before drop;

(2)如果不知道原表名称或者曾经DROP过多次表,可以直接按照回收站中的表名称将数据恢复,执行如下sql:

flashback table "回收站中的表名(如:Bin$DSbdfd4rdfdfdfegdfsf==$0)" to before drop rename to 新表名;

可以通过以上两种方式恢复数据。

标签:误删除,object,name,DROP,表名,table,回收站
From: https://www.cnblogs.com/sunny3158/p/17535264.html

相关文章

  • No bean named 'transactionManager' available: No matching PlatformTransactionMan
    报错内容:找不到transactionManager原因:xml配置平台事务管理器的时候给了id。配置@Transaction注解时没有配置transactionManager 解决方案:将xml中配置的id="tranManager"改为id="transactionManager"。原因是因为@Transaction中transactionManager的默认名称是”transactionM......
  • 修改所有Detail Table 字段为Not in 'D' Name
    --修改所有DetailTable字段为Notin'D'Namedeclare@TableNamevarchar(50),@FielNamevarchar(50),@TableIDvarchar(20),@FieldIDvarchar(20), @Table_Descriptionvarchar(200),@Field_Descriptionvarchar(200), @SQLvarchar(1000)DeclareselectTableNma......
  • oracle的tnsname.ora(网络服务名配置文件)
    #tnsnames.oraNetworkConfigurationFile:E:\oracle\oracleBaseMenu\oracleMainMenu\network\admin\tnsnames.ora#GeneratedbyOracleconfigurationtools.#sqlplususername/password@service_name普通用户登录#sqlplususername/password@service_nameassys......
  • Springboot No bean named 'XXXXX' available 问题解决
    一、问题描述近日在工作中遇见了一个bug,后端程序频频报错Nobeannamed'XXXXX'available。对比同类程序文件,没有发现有任何特殊之处。在网上搜索方法基本上就是扫描包配置、注解问题、路径问题等,皆不能解决我的问题。排查问题是发现出现问题的类命名不符合驼峰规范,按照这个......
  • rsync 遇到中文乱码文件名无法同步,并报错:rsync: rename "/test1/abc/abc/opt/abc/abc/
    rsync遇到中文文件名乱码报错报错如下:rsync:rename"/test1/abc/def/efg/abc-V2/img_abc/.δ\#261\#352\#314\#342-3.jpg.wdPu5C"->"event/abc-V2/img_abc/δ\#261\#352\#314\#342-3.jpg":Input/outputerror(5)rsync:rename"/test1/abc/def/e......
  • 使用Spring的NamedParameterJdbcTemplate完成DAO操作
    NamedParameterJdbcTemplate内部包含了一个JdbcTemplate,所以JdbcTemplate能做的事情NamedParameterJdbcTemplate都能干,NamedParameterJdbcTemplate相对于JdbcTemplate主要增加了参数可以命名的功能。publicObjectqueryForObject(Stringsql,MapparamMap,RowMapperrowMapper)......
  • System.Data.SqlClient.SqlException (0x80131904): Invalid object name 'Person'.
    @@abpMicrosoft.Data.SqlClient.SqlException(0x80131904):Invalidobjectname 请求接口报错:System.Data.SqlClient.SqlException(0x80131904):Invalidobjectname'Person'.无效的名称:Person数据库没有这个表,或者这个字段处理;检查数据库是否有改表或该字段......
  • CallerMemberName特性的使用
    C#6.0引入的一个特性,在属性或方法的参数中使用,用来获取调用者的成员名。1.在方法中使用publicclassMyClass{privatestring_myProperty;publicstringMyProperty{get{return_myProperty;}set{_myPropert......
  • 三、什么是namespace
    一、什么是Namespace?Namespace是配置项的集合,类似于一个配置文件的概念。二、什么是“application”的Namespace?Apollo在创建项目的时候,都会默认创建一个“application”的Namespace。顾名思义,“application”是给应用自身使用的,熟悉SpringBoot的同学都知道,SpringBoot项目......
  • plsql tnsnames.ora配置
    #tnsnames.oraNetworkConfigurationFile:F:\oracle\product.2.0\client_1\network\admin\tnsnames.ora#GeneratedbyOracleconfigurationtools.MES=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.6.6)(PORT=1521)))(CON......