ORA-38760: This database instance Failed to turn on flashback database
数据库环境:linux EL5.5-32x86 + oracle 10.2.1
Subject: Unable To Turn Off Database Flashback
Symptoms
there are problems with flashback database,however,unable to turn off flashback database so that
the database can be opened:
sql> alter database flashback off;
Database altered.
sql> alter database open;
alter database open
*
ERROR at line 1:
ORA-38760: This database instance Failed to turn on flashback database
.
Cause
there is a restore point in the database
checked v$restore_point
.
Solution
check whether restore points exist:
sql> select flashback_on from v$database;
sql> select name from v$restore_point;
If so,drop them:
sql> drop restore point <name>;
sql> alter database flashback off;
sql> select flashback_on from v$database;
sql> alter database open;
手工创建 flashback 的 restore_point 要小心,过了一段时间,要及时删除。
但是select name from v$restore_point;的结果:
sql> select flashback_on from v$database;
FLASHBACK_ON
------------------------------------
YES
1 row selected.
sql> select name from v$restore_point;
no rows selected
发现并没有v$restore_point;结果;
试着运行:
sql> Shutdown immediate;
sql> startup mount;
sql> alter database flashback off;
sql> alter database open;
然后:
sql> Shutdown immediate;
sql> Startup mount;
sql> alter database flashback on;
sql> alter database open;
居然可以了。
再验证一下:
sql> Shutdown immediate;
sql> Startup
ORACLE instance started.
Total System Global Area 381681664 bytes
Fixed Size 1273828 bytes
Variable Size 113246236 bytes
Database Buffers 264241152 bytes
Redo Buffers 2920448 bytes
Database mounted.
Database opened.
可以了,原因什么:
手工设置了alter system set DB_RECOVERY_FILE_DEST='/u99f';
alter system set db_recovery_file_dest_size=2G;
后要小心。