博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
恢复oracle数据到以前的某个时间点
阅读量:4213 次
发布时间:2019-05-26

本文共 942 字,大约阅读时间需要 3 分钟。

今天下午发现oracle数据库的参数表不知道被谁执行的语句都没有加条件,所以整个数据都乱了,不能用,查到了一下午,找到了几个解决办法,记录在此。

  • 一、

    执行如下SQL将test_temp表中的数据恢复到 2014 05 28  11:00:00 

    注意,这里一定要先删除全部数据,否则可能会导致数据重复

    delete from test_tmp;

    insert into test_tmp select *
        from test_tmp as of timestamp to_timestamp('2014-05-28 11:00:00','yyyy-mm-dd hh24:mi:ss')

    commit;

  • 二、 select timestamp_to_scn(to_timestamp('2014-05-27 11:00:00','YYYY-MM-DD HH:MI:SS')) from dual; 或select * from sys.smon_scn_time  order by time_dp desc;得到结果 71547785 然后   insert into test_tmp select * from test_tmp AS OF SCN 71547785

其实前两种是一样的 下面看第三种

  • 三、 select * from v$sqlarea ;SELECT * FROM v$session;SELECT * FROM v$session a,v$sqlarea b WHERE b.ADDRESS = a.PREV_SQL_ADDR; 通过这条语句找到的数据是有限的 因为有的用户可能已经断开和oracle的连接了

 

如果你看到以上方法能够解决你的问题,哪就不要犹豫,快点动 手吧,因为如果动手晚了,之前的操作的数据记录可能就要被覆盖了,因为存储不大的话要被循环使用的,我在20140527日的下午5点30分发现参数表被 破坏了,而且执行的语句是在下午的2点08分,当时首先想到的是把前几天导出来过的数据恢复进去,可是这样的就丢失了哪几天的数据,当第二天来了找到了以 上的两个方法时已经晚了,可以恢复到下午2点20分时的数据,但是2点时候的数据已经被擦掉了, 哎 呜呼哀哉!

 

转载地址:http://tlfmi.baihongyu.com/

你可能感兴趣的文章
RobotFramework+Eclipse安装步骤
查看>>
测试的分类
查看>>
photoshop cc2019快捷键
查看>>
pycharm2019版本去掉下划线的方法
查看>>
九度OJ 1091:棋盘游戏 (DP、BFS、DFS、剪枝)
查看>>
leetcode 13: Roman to Integer
查看>>
a标签中调用js方法
查看>>
js函数中传入的event参数
查看>>
[hive]优化策略
查看>>
c++14现代内存管理
查看>>
右值引用,move语义和完美转发
查看>>
c++使用宏检测类是否包含某个函数或者变量属性
查看>>
CSS之Multi-columns的column-gap和column-rule
查看>>
CSS之Multi-columns的跨列
查看>>
CSS之浮动(一)
查看>>
CSS之浮动(二)
查看>>
AtomicInteger源码解析
查看>>
CopyOnWriteArraySet源码学习
查看>>
ThreadLocal学习笔记
查看>>
用talib实现基于emv的简易量化投资策略
查看>>