zoukankan      html  css  js  c++  java
  • 找回误删的表和数据

    一、找回误删的表

    1、在recyclebin(类似于回收站)中查找drop的表:select * from recyclebin order bydroptime desc;

    2、恢复表和表数据:flashback table ‘表名’ to before drop;值得注意的是,当一张表被drop两次及两次以上的时候,flashback命令只恢复dropscn大的哪个表。如果在drop表的时候再结束加上purge,如:drop table '表名' purge;,则无法通过flashback命令恢复。因为在加上了purge后drop,就类似粉碎文件,文件则不会放入回收站中。

    最后在记录下如何查找被修改的数据,方便以后使用:

    查找指定时间的快照

    select * from '表名'  as of timestamp to_timestamp('2019-12-10 15:59:00', 'yyyy-mm-dd hh24:mi:ss');

    alter table '表名' enable row movement;

    row movement 意思就是,一个现存的行允许改变其rowid(物理存储地址),通常情况下,数据行在分配了空间之后,行的rowid就固定了。即使以后行长度超出预留的空间,也不会将其移动。12c的“ALTER TABLE XXX MOVE; ”并不受此控制。在修改前最好确认一下当前是否允许行移动,如果是disable的话,操作完后最好改回到disable :“select ROW_MOVEMENT, TABLE_NAME from user_tables”。

    回闪指定时间的快照数据
    flashback table '表名' to timestamp TO_TIMESTAMP('2019-12-10 15:59:00', 'yyyy-mm-dd hh24:mi:ss');

  • 相关阅读:
    CentOS 下安装apt-get
    Centos 6.5升级到Git2.1.2的步骤
    JAVA常识积累
    Android网络编程概述
    解读ClassLoader
    android ndk调用OpenGL 实现纹理贴图Texture
    android Bind机制(二)
    Android Binder机制原理(史上最强理解,没有之一)(转)
    NDK常见问题
    根因分析初探:一种报警聚类算法在业务系统的落地实施
  • 原文地址:https://www.cnblogs.com/gzyfj/p/12021694.html
Copyright © 2011-2022 走看看