ORA-38760: This database instance failed to turn on flashback database 第三篇
问题现象:
在数据库alert告警日志中看见如下信息:
Completed: ALTER DATABASE MOUNT
Wed Nov 19 04:57:28 2014
alter database open
Errors in file /DBSoft/diag/rdbms/woo/woo/trace/woo_ora_5936.trc:
ORA-38760: This database instance failed to turn on flashback database
ORA-38760 signalled during: alter database open...
问题分析:
该错误通过查看Metalink 后得知是因为Flash back信息不完整导致。
[oracle@db01 ~]$ oerr or 38760
oerr: Unknown facility 'or'
[oracle@db01 ~]$ oerr ora 38760
38760, 00000, "This database instance failed to turn on flashback database"
// *Cause: Database flashback is on but this instance failed to
// start generating flashback data. Look in alert log for more
// specific errors.
// *Action: Correct the error or turn off database flashback.
这个时候我根据以往的经验尝试关闭闪回,再次打开数据库,还是报ORA-38760错误,此时,告警日志中只是产生了一个woo_ora_5936.trc跟踪文件,里面有看到有用的信息。
这个时候,我想需要去查看下闪回的状态的了
SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
RESTORE POINT ONLY
再接着查看恢复检查点:
SQL> select * from v$restore_point;
SCN DATABASE_INCARNATION# GUA STORAGE_SIZE TIME RESTORE_POINT_TIME PRE NAME
---------- --------------------- --- ------------ ----------------------------------- ------------------------- --- --------------------
1187867 2 YES 3056812032 04-OCT-14 02.41.43.000000000 AM YES MACLEAN_ROLLBACK
解决办法:
1、删除恢复点MACLEAN_ROLLBACK
SQL> drop restore point MACLEAN_ROLLBACK;
Restore point dropped.
SQL> select * from v$restore_point;
no rows selected
2、启动数据库,并查看flashback状态
SQL> alter database open;
Database altered.
SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
NO
总结:
这个问题时控制文件与闪回去日志文件中所记录的信息不一致导致的。因此,冷备份的时候,最好将闪回去一并进行备份。
当然该问题还可以通过使用冷备分加上对于闪回去的备份,可以直接启动数据库实例。