Oracle Archive log 导致 磁盘没空间了 怎么办?

ramboo2002 2009-01-17 11:04:00
看了篇文章:
数据库运行在ARCHIVED模式下,所以oracle会把archived log files写到initial parameter文件中log_archive_dest_1参数所指定的文件夹下,但是随着时间的推移,archived log files会越来越多,迟早会把磁盘塞满,请问oracle是否有自动监控磁盘空间所利用比例的service 或者oracle会有哪个view可以查看到这个目的文件夹磁盘空间的使用情况,以便在被写满之前做出提示。

我现在紧急的问题是:arc文件是放在了 oracle目录下 ,导致该磁盘昨天是97%,今天是99%了,请问我可以先把这些arc文件直接移走吗?现在是生产数据库,不敢随便乱动啊!
请教解决方法,紧急。
...全文
3496 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
chaoy 2010-12-10
  • 打赏
  • 举报
回复
我也看看7楼内容。
hyunwu 2010-10-27
  • 打赏
  • 举报
回复
偶想看看7楼的回复
denkbar 2009-11-17
  • 打赏
  • 举报
回复
我注册了,怎么看不到7楼的回复?
yefalai 2009-11-02
  • 打赏
  • 举报
回复
不错不错,谢谢各位大虾
w00037 2009-07-20
  • 打赏
  • 举报
回复
我我我我
carson_xu 2009-04-11
  • 打赏
  • 举报
回复
往数据库里导入数据时日志产生得特别多。我测试过,20G的log_archive_dest空间不到1个小时就满了。要是手工rm的话还是比较麻烦的,至少得盯着数据库运行。能自动删除archivelog吗?
humucun 2009-01-19
  • 打赏
  • 举报
回复
能帮朋友们解决问题就是我最大的荣幸了,以后还要烦劳朋友们帮我解决些难题,呵呵。祝朋友们新年快乐,HAPPY 牛 Year!
ramboo2002 2009-01-19
  • 打赏
  • 举报
回复
谢谢大家,用rman搞定。非常感谢7楼的朋友。
又是违规昵称 2009-01-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 humucun 的回复:]
两种方法:
1、配置RMAN自动管理ARCHIVELOG。也可在RMAN中将数据备份到磁带上,然后将过期的ARCHIVELOG删除;
2、可以手工来处理,步骤如下
1)将/oracle下的相关ARCHIVELOG日志文件移到别的文件系统下(保留一段时间的ARCHIVELOG日志即可,其他的可移走,用系统命令mv移走)。然后打包、压缩,备份到介质上,此时可将这些移出的文件删除。注意:别在原来的/oracle打包了,否则空间占满了就有些麻烦了。
2)以oracle用户登录…
[/Quote]

这个不错
melody1128 2009-01-18
  • 打赏
  • 举报
回复
先备份再删除
。。。
ruihuahan 2009-01-18
  • 打赏
  • 举报
回复
七楼的方法正确。

归档日志是用来恢复数据库的,最好不要随便删除。

先用 RMAN 做数据库备份,有了备份,之前的归档日志就可以删除了。

可以设置 RMAN 在完成备份后自动删除过期的归档日志,也可以手工删除。
liuyi8903 2009-01-17
  • 打赏
  • 举报
回复
可以自动啊
ramboo2002 2009-01-17
  • 打赏
  • 举报
回复
只能手动备份吗?有配置可以修改,直接将归档文件放到其他地方不?
liuyi8903 2009-01-17
  • 打赏
  • 举报
回复
使用crontab来删除
或者使用rman来定期删除
Andy__Huang 2009-01-17
  • 打赏
  • 举报
回复
数据库运行在归档模式下,产生的日志文件要把它迁移到其他盘上,也就是平时说的磁带备份,或者备份到其他空的硬盘上也可以
ramboo2002 2009-01-17
  • 打赏
  • 举报
回复
要是测试库,我就移除这些文件了,我看了下,每天备份的几个问加起来300多M啊?这不还不到一个月就塞满了。
ramboo2002 2009-01-17
  • 打赏
  • 举报
回复
操作系统是linux.
wangxuhero 2009-01-17
  • 打赏
  • 举报
回复
你的archivelog一直没有清理过吧,其实每份归档日至留几个备份甬余就可以,写几个rman脚本,其中一个每次备份使用delete input,删除需要天数以前的archive log。
xiaoxiao1984 2009-01-17
  • 打赏
  • 举报
回复
another example:(I'm so sorry, I cannot input any chinese)

in the testing system, we can drop archived logs and don't need to keep it.

rman target sys/sys@dbname
delete archivelog until time 'sysdate-1'; //it removes the archivelog from you disk until yesterday

otherwise, you have to move these archived logs to other disk or back up the recovery area to the tape device. If you move these archived logs manually, then you execute the following commands:

rman target sys/sys@dbname
crosscheck archivelog all ;

It will update the information in the control files of your database.
liuyi8903 2009-01-17
  • 打赏
  • 举报
回复
eg:

connect target /
list backup;
report obsolete;
delete obsolete;
run {
backup archivelog all delete input;
backup database format '/backup/full%u_%s_%p' include current controlfile;}

加载更多回复(5)

17,380

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧