蘑蘑菇菇　阅读数:909　ORA-00257　归档日志错误解决方案　在实际项目中遇到了ORA-00257错误(空间不足错误),通过查找资料,绝大部分说这是由于归档日志太多,占用了全部的硬盘剩余空间导致的,通过简单删除日志或加大存储空间就能够解决。 　诊断过程:　(1)查看数据库REDOLOG情况:　SQL>　conn　/@dmsasc　as sysdba　SQL>　select　*　from　v$log;　发现ARC字段值为NO,表示系统没法自动做归档。　检查一下归档目录和log　sequence:　SQL>　archive　log　list;　(2)手工切换日志:　SQL>　alter　system　switch　logfile;　ORA-01013:　用户请求取消当前的操作　在等待长时间没反应后,中断操作,手工切换日志没有成功。　(3)查看FLASH_RECOVERY_AREA空间使用情况:　SQL>　select　*　from　v$recovery_file_dest;　计算flash　recovery　area已经占用的空间:　SQL>　select　sum(percent_space_used)*3/100　from　v$flash_recovery_area_usage;　FLASH_RECOVERY_AREA空间已使用了2.35GB　SQL>　select　*　from　v$flash_recovery_area_usage;　归档日志空间已使用了多少百分比,发现ARCHIVELOG占近93.96%,这样FLASH_RECOVERY_AREA空间的空间已经被完全占据了。　(4)找到recovery目录:　SQL>　show　parameter　recover;　解决过程:　(1)根据数据库目前可用存储空间为200GB、FLASH_RECOVERY_AREA空间为8GB的实际情况,把FLASH_RECOVERY_AREA的空间修改为20GB。　SQL>　alter　system　set　DB_RECOVERY_FILE_DEST_SIZE=20g; 　SQL>　select　*　from　v$recovery_file_dest;　(2)再检查日志状态,发现REDOLOG处于正常的归档状态:ARC　YES　SQL>　select　*　from　v$log