oracle中删除归档日志

上一篇 / 下一篇  2010-12-31 15:31:03 / 个人分类:数据库

查看数据库是否是归档模式

SELECT log_mode FROM v$database

查看归档日志信息

select * from v$archived_log
status:D已删除,A正常

查看归档日志使用大小

select sum(a.BLOCK_SIZE*a.BLOCKS)/1024/1024 from v$archived_log a where a.DELETED='NO'
正常来说,归档日志文件大小差不多数多少个归档,乘以每个的大小也行。

删除归档日志并回收空间方法

controlfile中记录着每个archivelog的相关信息,我们在OS下把这些物理文件删掉后,controlfile中仍然记录着这些archivelog的信息,也就是oracle并不知道这些文件已经不存在了!删除归档日志时,操作如下:

1.进入rman

[root@linux150 ~]# su - oracle
[oracle@linux150 ~]$rman target/

2.DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';
说明:SYSDATA-7,表明当前系统时间7天前,before关键字表示在7天前的归档日志。

3.list archivelog all;(查看归档日志,检验下就发现已删除了)

或者

1.先在linux下删除物理日志文件

find /u02/oradata/center/archive -mtime +7 -name '*.dbf' -exec rm {} \;

2.再进入rman后,执行:

crosscheck archivelog all;
delete expired archivelog all;(
确认时键入"yes")
目的:校验归档日志,然后删除已不存在的归档日志。

3.list archivelog all;(查看归档日志,检验下就发现已删除了)

4.退出rman:exit


TAG: 归档日志

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2020-08-06  
      1
2345678
9101112131415
16171819202122
23242526272829
3031     

数据统计

  • 访问量: 9244
  • 日志数: 21
  • 图片数: 1
  • 建立时间: 2008-09-07
  • 更新时间: 2011-06-01

RSS订阅

Open Toolbar