• Oracle正确删除archivelog文件(转)


     
      Oracle在开启了归档模式后,会在指定的archive目录下产生很多的archivelog文件,而且默认是不会定期清除的,时间长久了,该文件夹会占用很大的空间。

      问题:如何定期正确删除archivelog文件呢?

      很多人直接在archive目录下删除文件,这样其实不能达到在Oracle CLF文件中删除文件记录的效果。

      正确方法:

      1.用RMAN连接目标DB:

      RMAN target sys/*****@orcl

      2.在RMAN命令窗口中,输入如下命令:

      crosscheck archivelog all;

      delete expired archivelog all;

      或者删除指定时间之前的archivelog:

      DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';(指定删除7天前的归档日志)

    ---补充---:
    直接如下就行了:
    RMAN target sys/*****@orcl
    DELETE NOPROMPT ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';

    RMAN target sys/*****@orcl
    DELETE NOPROMPT ARCHIVELOG UNTIL TIME "TO_DATE('XXXX-XX-XX','YYYY-MM-DD')";

    补充:

     noprompt  不用确认 
    就是 手动输入yes & no

    --------------------------------------------------------------------------------------------------------------------------
      3.其它相关命令:

      查看归档日志列表:

      list archivelog all;

      查看失效的归档日志列表:

      list expired archivelog all;

      4.定期清除archivelog:

      可以将如下代码写成.bat文件,在控制面版的任务计划下添加新的定时任务:

      RMAN target sys/*****@orcl

      crosscheck archivelog all;

      delete expired archivelog all;


     

  • 相关阅读:
    P4855 MloVtry的idea
    CF343D Water Tree
    CF165D Beard Graph
    P3833 [SHOI2012]魔法树
    P2410 [SDOI2009]最优图像 ZKW最大费用最大流
    P2157 [SDOI2009]学校食堂
    P2407 [SDOI2009]地图复原
    P4008 [NOI2003]文本编辑器
    awk里面执行shell命令
    git 系统中 post-receive 钩子不能正常执行 git pull 解决方法
  • 原文地址:https://www.cnblogs.com/sumsen/p/4107941.html
Copyright © 2020-2023  润新知