`

oracle 在线删除归档、闪回日志后

阅读更多

因为开启归档、闪回后,空间磁盘不够了。没有多想就在数据库处于open状态下,rm了所有的归档、闪回日志。

等到重启数据库时出现错误:

 

 

SQL> conn /as sysdba

Connected to an idle instance.

SQL> startup

ORACLE instance started.

 

Total System Global Area  422670336 bytes

Fixed Size                  1336960 bytes

Variable Size             310380928 bytes

Database Buffers          104857600 bytes

Redo Buffers                6094848 bytes

Database mounted.

ORA-38760: This database instance failed to turn on flashback database

 

处理过程如下:

先关闭数据库的闪回功能,再alter  database open:

 

 

SQL> 

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

还是同一个错误。
google了一下,是我的数据库中有restore point的缘故。
so,下面是删除restore point的工作:
SQL> select flashback_on from v$database; 

FLASHBACK_ON
------------------
RESTORE POINT ONLY

SQL> 
SQL> 
SQL> select name from v$restore_point;

NAME
--------------------------------------------------------------------------------
BEFOR_UPGRADE

关于restore point的东西,在数据库open状态下可查询:
SELECT name, scn, time, database_incarnation#, guarantee_flashback_database, storage_size FROM v$restore_pint; (RAC环境要查询gv$restore_pint)

SQL> drop restore point BEFOR_UPGRADE;

Restore point dropped.

SQL> select flashback_on from v$database;

FLASHBACK_ON
------------------
NO

SQL> alter database open;

Database altered.

这样数据库就open了。




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics