Oracle-由于闪回区空间不足导致业务系统Hang
背景
临下班时,业务方说业务系统不能写入数据。
检查分析
1. 检查db alert日志
发现闪回区不能分配足够空间,信息如下
2. 登录数据库检查相关配置及使用情况
-- 检查使用情况
select * from V$FLASH_RECOVERY_AREA_USAGE;
-- 检查配置
select name, flashback_on from v$database;
show parameter recovery
show parameter flashback
-- 检查是否存在还原点
select name, to_char(time,'yyyy-mm-dd hh24:mi:ss') ctime, STORAGE_SIZE from v$restore_point;
-- 闪回区需要空间
SELECT FLASHBACK_SIZE, ESTIMATED_FLASHBACK_SIZE FROM V$FLASHBACK_DATABASE_LOG;
处理
3. 与业务管理员确认删除历史还原点
drop restore point &&point_name;
由于历史遗留一个还原点,里面的flashback log日积月累增加,直到闪回区空间不足已分配足够空间创建闪回日志文件,从而导致系统hang住。
4. 最后检查确认业务系统使用情况
至此,问题解决。