zoukankan      html  css  js  c++  java
  • 把oracle数据库恢复到某个时间点或者某个scn

    alter session set nls_date_format='yyyymmdd hh24:mi:ss';

    select sysdate from dual;

    conn dbauser/123456;      随便一个用户,然后删除其中的一张表用来做测试

    drop table test;

    rman target/

    startup mount;

    restore database;      还原数据文件

    sql 'alter session set nls_date_format="yyyymmdd hh24:mi:ss"';     因为在rman中执行,所以需要sql ‘’;

    recover database until time '20110414 11:33:56';      恢复到这个时间的数据,执行之后需要重新生成重做日志文件

    sql 'alter database open resetlogs';

    scn是指系统改变号,oracle数据库使用它来记录数据库的过去时间内的状态和轨迹

    conn /as sysdba

    select dbms_flashback.get_system_chage_number from dual;

    select to_char(scn_to_timestamp(963959),'YYYY-MM-DD HH24:MI:SS') from dual;       将scn转换为时间

    select * from (select time_dp,scn from smon_scn_time order by time_dp desc) where rownum<10;  根据用户删除数据时间找出相应的scn号

    rman target/

    startup mount;

    restore database;    还原数据文件

    recover database until scn 963915;

    sql 'alter database open resetlogs';     重新生成重做日志文件

  • 相关阅读:
    第36课 经典问题解析三
    第35课 函数对象分析
    67. Add Binary
    66. Plus One
    58. Length of Last Word
    53. Maximum Subarray
    38. Count and Say
    35. Search Insert Position
    28. Implement strStr()
    27. Remove Element
  • 原文地址:https://www.cnblogs.com/biaopei/p/8418833.html
Copyright © 2011-2022 走看看