解决方案 »

  1.   

    数据库是否开启了闪回
    尝试闪回数据库到导入前的状态
    数据库闪回(Flashback Database)
    闪回数据库可以迅速的使数据库回到误操作或人为错误的前一个时间点,如实际中的“撤消”操作,将可以不利用备份就快速地实现时间点的恢复。实际上,Oracle为了实现这一个功能,创建了另外一组日志,就是Flashback Logs(前滚日志),记录数据库的前滚操作。Flashback Database的前提条件:(1)数据库必须处于ARCHIVELOG模式(2)数据库必须具有flash recovery area,为此需要设置如下参数:Ÿ          DB_RECOVER_FILE_DEST:确定Flashback日志的存放地点Ÿ          DB_RECOVER_FILE_DEST_SIZE:确定Flashback日志恢复区的大小Ÿ          DB_FLASHBACK_RETENTION_TARGET:设定闪回数据的保存时间,单位是分钟。默认是1440分钟(一天)(3)对于RAC数据库,flash recovery area必须存储在集群文件系统或ASM内 常见flashback database命令SQL> flashback databaseto timestamp to_date(xxx);SQL> flashback database to timestampTO_TIMESTAMP (xxx);SQL> flashback database to scnxxx;SQL> flashback database to sequencexxx thread 1SQL> flashback databaseto timestamp(sysdate-1/24) 例子:(1)启用flashback log和归档模式SQL> shutdown immediateSQL> startup mount;SQL> alter database archivelogSQL> alter database flashbackon;SQL> alter database open; (2)获取当前的SCNSQL> select current_scn from v$database;   -- 查看当前的SCN CURRENT_SCN-----------1237617        (3)模拟故障(截断scott.emp)         SQL> truncate table scott.emp;        (4)完成FLASHBACKDATABASE(必须在mount状态下)         SQL> shutdown immediate         SQL> startup mount;         SQL> flashback database to scn1237617;      (5)使用resetlogs方式打开数据库SQL> alter database open resetlogs; (6)测试flashbackdatabase是否成功SQL> conn scott/tigerSQL> select * from emp;
      

  2.   

    SQL> alter database flashback on;
    alter database flashback on
    *
    第 1 行出现错误:
    ORA-38759: 数据库必须仅由一个实例装载并且不能打开。
      

  3.   

    没有开启闪回的话,后面就不用看了
    system用户下应该都是数据库系统需要的东西,重建实例,使用新实例的数据文件应该也可以百度下oracle冷备份与恢复
    1、查询并记录数据库的主要参数
    2、关闭oracle服务,做好冷备份
    3、删除重建数据库实例,重建时参数保持和之前的数据库参数一致
    4、使用冷备份进行恢复,恢复是system的相关文件就不用恢复了,使用新生成的数据文件
    5、重起oracle服务,测试是否可用
    注意:处理前做好备份工作,以免数据丢失
      

  4.   

    SQL> flashback database to timestamp to_timestamp('2014-11-03 10:01:01','YYYY-MM-DD HH:MI:SS');
    flashback database to timestamp to_timestamp('2014-11-03 10:01:01','YYYY-MM-DD HH:MI:SS')
    *
    第 1 行出现错误:
    ORA-38729: 执行 FLASHBACK 的闪回数据库日志数据不足。