您的位置:首页 > 数据库 > Oracle

把oracle数据库恢复到某个时间点或者某个scn

2018-02-12 13:48 92 查看
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 sysdbaselect 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';     重新生成重做日志文件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: