误删除表的恢复方法

来源:互联网 发布:一条龙网站源码 编辑:程序博客网 时间:2024/05/07 22:30
1、使用逻辑备份恢复(有数据丢失)
2、flush table tname to before drop(在回收站里有此表才可以恢复) drop表时;drop table t purge;不能用闪回恢复
3、闪回数据库flashback database 得不偿失(生成库不用此方法)
4、用点时间的不完全恢复
1)首先查看下归档日志
select name from v$archived_log;
2)数据库必须是归档模式的
archive log list;
3)又有一份备份,且备份要早于删除的时间点
rman target /
backup database format '/home/oracle/bak/%d_%s.bak'
drop table t purge;
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
show recyclebin 
做几次日志切换
alter system switch logfile;
把数据备份文件、归档日志和参数文件一起拷贝到恢复机器上
先恢复控制文件,之后启动到mount 
restore controlfile from '/home/oracle/bak/db2_9.bak';
alter database mount;
list backup of database;
restore database;转储数据库
sqlplus / as sysdba
recover database until time '2013-05-21 04:00:00' using backup controlfile;


alter database open resetlogs;

0 0