Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2583748
  • 博文数量: 323
  • 博客积分: 10211
  • 博客等级: 上将
  • 技术积分: 4934
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-27 14:56
文章分类

全部博文(323)

文章存档

2012年(5)

2011年(3)

2010年(6)

2009年(140)

2008年(169)

分类: Oracle

2009-03-12 20:58:54

  一朋友今天早上通过MSN告诉我,他在备份数据库的时候出现错误:
 
ORA-19815: WARNING: db_recovery_file_dest_size of 4346257823 bytes is 100.00% used, and has 0 remaining bytes available.
 
他的数据库是oracle 10gR2。flash_recovery_area空间他已经手工释放了(删除一些文件)。但问题还是没有解决。我要他登上数据库查询v$recovery_file_dest这个视图,并把space_limit ,space_used,number_of_files三个字段的值告诉我。结果是前两个字段的值几乎相等,后一个字段的值显示327。这说明仍然有327个文件被oracle记录,且used空间没有释放。其实这个问题我遇到过,手工删除了文件,oracle并不知道。有时你删除一个正在被其他进程使用的文件,文件虽然删除了,但空间并未释放。知道了原因解决方法就简单了。
 
使用rman登录数据库进行crosscheck:crosscheck archivelog all   --》
rman标记被手工删除的归档的日志为expired,然后就可以删除了:RMAN> delete expired archivelog all;
我们也可以将闪回区的内容备份到第三方介质,同样可以释放空间:RMAN> backup recovery area;
阅读(2200) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~