(1)问题现象
SQL> conn hr/hr ERROR: ORA-00257: archiver error. Connectinternal only, until freed. Warning: You are no longer connected toORACLE.
(2)问题分析
在oracle 10g后,若flashback开启,后台归档程序进行(ARCn)将会自动在闪回恢复区中创建每个归档重做日志的一个副本,而flashback区域有大小限制:
SQL> show parameter recovery NAME TYPE VALUE ----------------------------------------------- ------------------------------ db_recovery_file_dest string /opt/oracle/flash_recovery_area db_recovery_file_dest_size big integer 3882M recovery_parallelism integer 0
当falshback空间已满,则连接数据库失败。
(3)问题解决
l 删除部分归档日志
l 增加falshback的空间限制
SQL> alter system set DB_RECOVERY_FILE_DEST_SIZE=20g; System altered.
(4)监控flashback
l 查看闪回恢复区的相关信息
SQL> select * from v$recovery_file_dest; NAME SPACE_LIMITSPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES --------------------------------------------------- ---------- ----------------- --------------- /opt/oracle/flash_recovery_area 2.1475E+10 4190778368 0 95
l 查看flash area的使用率
SQL> select * from v$flash_recovery_area_usage; FILE_TYPE PERCENT_SPACE_USEDPERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES -------------------- ------------------------------------------- --------------- CONTROL FILE 0 0 0 REDO LOG 0 0 0 ARCHIVED LOG 19.51 0 95 BACKUP PIECE 0 0 0 IMAGE COPY 0 0 0 FLASHBACK LOG 0 0 0 FOREIGN ARCHIVED LOG 0 0 0 7 rows selected.
其它内容请参考