当前位置:  数据库>oracle

如何正确删除Oracle归档日志文件

    来源: 互联网  发布时间:2017-05-17

    本文导语: 我们都知道在controlfile中记录着每一个archivelog的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog的信息,在Oracle的OEM管理器中有可视化的日志展现出,当我们手工清除archive目录下的...

我们都知道在controlfile中记录着每一个archivelog的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog的信息,在Oracle的OEM管理器中有可视化的日志展现出,当我们手工清除archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,也就是oracle并不知道这些文件已经不存在了!这时候我们要做手工的清除的话,下面我经过实验,可以尝试这种方法:


1. 进入rman 
2. connect target /
3. crosscheck archivelog all;
4. delete expired archivelog all;
这时候我们再去OEM中看就一定看不到,如果你的从来没有做过这个动作的话,我们可以比较从这个动作前的controlfile后动作后的controlfile的大小!

ORACLE正确删除归档并回收空间的方法


ORACLE正确删除归档并回收空间的方法
一个ORACLE归档日志经常满,表现为/oraarchive 这个文件空间占用100%大家一定抱怨ORACLE为何没有归档维护工具,很多人直接删除了事,错了,ORACLE有,而且很智能,可以正确的删除归档和FLASHBACK,不过切记,ORACLE归档日志对于ORACLE的数据恢复和备份非常重要,不到万不得已不要删除归档日志。
删除归档日志的过程
以ORACLE用户身份登录到数据库服务器主机或通过网络连接
进入ORACLE数据备份工具
rman target/
或rman target/@orcl
在命令窗口里面执行
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';
说明
SYSDATA-7,表明当前的系统时间7天前,before关键字表示在7天前的归档日志,如果使用了闪回功能,也会删除闪回的数据。
同样道理,也可以删除从7天前到现在的全部日志,不过这个命令要考虑清楚,做完这个删除,最好马上进行全备份数据库
DELETE ARCHIVELOG FROM TIME 'SYSDATE-7'; 删除从7天前到现在的全部日志,慎用

UNIX/LINUX下也可以通过FIND找到7天前的归档数据,使用EXEC子操作删除

find /oraarchive -xdev -mtime +7 -name "*.dbf" -exec rm -f {} ;
这样做仍然会在RMAN里留下未管理的归档文件
仍需要在RMAN里执行下面2条命令
crosscheck archivelog all;
delete expired archivelog all;
所以还不如上面的方法好用,不过用FIND的好处就是,可以在条件上,和EXEC子项上做很多操作,实现更复杂的功能


    
 
 

您可能感兴趣的文章:

  • Oracle 删除归档日志实例
  • win平台oracle rman备份和删除dg备库归档日志脚本
  • Oracle相关:Rman Crosscheck删除失效归档
  • c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件
  • 如何删除前面有个-的文件,我的根目录下有个文件叫 -C,请问如何删除?
  • Linux 删除命令关于删除系统打不出的乱码文件名
  • 移动开发 iis7站长之家
  • 请教:为什么删除不掉?我用超级用户删除某一文件夹rm -R oracle失败。
  • 在linux下删除文件夹的时候总提示Device or resuource busy,请问有没有强行删除的办法?
  • 收藏 不显示删除回复显示所有回复显示星级回复显示得分回复 因无意删除一些文件,ubuntu系统无法启动,请求高手远程帮助
  • linux脚本:清空指定文件夹下的所有文件,但该文件夹不删除
  • 求助~~急~如何删除指定目录下的文件夹???(不是文件)
  • linux 的文件系统,删除文件后为什么文件系统的大小不变?
  • 如何删除某个目录下除了指定文件夹之外的所有文件和文件夹
  • Android中删除文件以及文件夹的命令记录
  • 如何删除文件夹(文件夹包含文件和子目录)
  • 两个文本文件,如何将第二个文件中的行从第一个文件中删除?
  • libcurl删除ftp上的文件及新建文件夹,急!!!
  • linux下如何对文本文件和记录文件进行插入删除操作啊?
  • 编辑文件后好多临时文件怎么删除
  • 根据文件创建时间顺序删除文件? 急急急
  • 如何递归删除文件夹下所有制定文件名的文件
  • 求助,在Linux下当文件夹大小超过1G时,删除文件夹内容
  • linux如何用命令清空文件的内容但不删除文件
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Maps 成员 erase():删除一个元素
  • 怎么实现,动态的增加和删除input,删除时用radiobox选中,然后点删除,即可。谢谢
  • C++ MultiMaps 成员 erase():删除元素
  • 100分相送,怎么实现,动态的增加和删除input,删除时用radiobox选中,然后点删除,即可
  • C++ Double Ended Queues(双向队列) 成员 erase():删除一个元素
  • 请问:linux中的软件包安装后,怎么删除呀,直接删除吗?
  • C++ Lists(链表) 成员 erase():删除一个元素
  • jquery删除提示框(弹出是否删除对话框)
  • C++ Lists(链表) 成员 remove():从list删除元素
  • vim删除命令"d3e"为什么删除单词的数目不一致?
  • C++ Lists(链表) 成员 unique():删除list中重复的元素
  • jquery删除提示框弹出是否删除对话框
  • C++ Lists(链表) 成员 pop_front():删除第一个元素
  • GRUB的删除与逻辑驱动器存在时扩展分区的删除
  • C++ Priority Queues(优先队列) 成员 pop():删除第一个元素
  • fedora 删除软件,但是不删除依赖软件
  • C++ Queues(队列) 成员 pop():删除第一个元素
  • linux 变量内容删除 中有关“最短数据删除”的意思
  • C++ MultiMaps 成员 clear():删除所有元素
  • sql server 删除表1某些数据的同时自动删除表2的相关数据的sql代码
  • C++ Lists(链表) 成员 clear():删除所有元素
  • Oracle删除表前判断表名是否存在若存在则删除


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,