在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';

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子项上做很多操作,实现更复杂的功能

3.简要介绍一下report obsolete命令

使用report obsolete命令报告过期备份

RMAN> report obsolete;

RMAN retention policy will be applied to the command

RMAN retention policy is set to redundancy 1

4.使用delete obsolete命令删除过期备份:

RMAN> delete obsolete;

RMAN> crosscheck archivelog all;

released channel: ORA_DISK_1

allocated channel: ORA_DISK_1

channel ORA_DISK_1: sid=19 devtype=DISK

specification does not match any archive log in the recovery catalog

5 在rman中用crosscheck检查归档日志,2个归档日志都是失败的:

RMAN> crosscheck archivelog all;

释放的通道: ORA_DISK_1

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=14 devtype=DISK

对归档日志的验证失败

存档日志文件名 =D:ORACLEORADATATESTARCHIVE1_47.DBF 记录 ID=1 时间戳 =572866

683

对归档日志的验证失败

存档日志文件名 =D:ORACLEORADATATESTARCHIVE11_48.DBF 记录 ID=2 时间戳 =57286

6931

已交叉检验的 2 对象

6 试着同步一下,看行不行,结果不行,crosscheck还是失败:

RMAN> resync catalog;

正在启动全部恢复目录的 resync

完成全部 resync

RMAN> crosscheck archivelog all;

释放的通道: ORA_DISK_1

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=14 devtype=DISK

对归档日志的验证失败

存档日志文件名 =D:ORACLEORADATATESTARCHIVE1_47.DBF 记录 ID=1 时间戳 =572866

683

对归档日志的验证失败

存档日志文件名 =D:ORACLEORADATATESTARCHIVE11_48.DBF 记录 ID=2 时间戳 =57286

6931

已交叉检验的 2 对象

7 用list expired看看是否有失效的archive log,证明没有失效的archive log:

RMAN> list expired archivelog all;

说明与恢复目录中的任何存档日志均不匹配

8 更改语言环境试试,结果再次crosscheck,2个archive log 都成功了:

RMAN> exit;

oracle 删除老存档,【转】oracle存档日志删除相关推荐

  1. oracle存档模式,Oracle开启归档模式并设置RMAN自动备份策略

    title: Oracle开启归档模式并设置RMAN自动备份策略 categories: 数据库 tags: - Oracle - RMAN timezone: Asia/Shanghai date: ...

  2. Oracle归档日志删除

    为什么80%的码农都做不了架构师?>>>    环境说明 版本:Oracle 11gR2 操作步骤 查看系统磁盘使用情况 [oracle@Oracle ~]$ df -h Files ...

  3. Oracle 归档开启切换和归档日志删除(单实例和RAC)

    Oracle默认安装后,是没有开启归档模式的,需要手动开启. 开启归档 --单实例 如果archive log模式下不能正常startup,则先恢复成noarchive log,startup成功后, ...

  4. oracle运行日志文件在哪,Oracle日志文件管理

    ORACLE数据库的Oracle日志文件$ORACLE_BASE/admin/orasid/bdump/alert_orasid.log记录了重作日志的转换,数据库启动和关闭,数据库结构的改变,回退段 ...

  5. oracle异常日志在哪,Oracle 11g 中告警日志的位置

    首先介绍2个新名词 Automatic Diagnostic Repository (ADR)一个存放数据库诊断日志.跟踪文件的目录,称作ADR base,对应初始化参数DIAGNOSTIC_DEST ...

  6. 一 如何检查oracle的归档日志及空间占用率,清除归档日志、Oracle归档日志使用情况查询、查看oracle数据库一周产生的归档日志

    一 如何解决"归档日志已满问题" 问题描述:所用数据库为 Oracle 10g ,模式为归档模式,oracle 系统默认的归档空间为2G,由于日志过多,空间写满,数据库的redo文 ...

  7. 测试oracle删除干净,彻底卸载Oracle

    彻底卸载Oracle 常用Oracle数据库的同仁都知道,Oracle经常会莫名的出现一些错误,导致数据库无法正常启动或使用. 经过对出现这些问题的解决,后来找到了问题的根源,也就是再次安装Oracl ...

  8. oracle的删除的row如何,Oracle 删除大表中部分数据

    需求: 项目中有一张表大概有7000多万条数据,造成表空间已满,需要清理部分数据,打算清理3000万. 2B 做法: delete from table_name where ID > '400 ...

  9. Oracle 11g如何清理数据库的历史日志详解

    11g清理数据库历史日志的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍 1. 创建存放数据库待删除日志文件路径 用于存放准备删除,这里假设放在/home/Oracle/del ...

  10. Oracle 查看表空间名称及大小和删除表空间及数据文件方法

    --1.查看表空间的名称及大小  SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size  FROM dba_ta ...

最新文章

  1. Houdini魔法特效制作学习教程
  2. UltraEdit v18及注册
  3. C# MVC 使用 CKEditor图片上传 提示“不正确的服务器响应”
  4. 中国省市区json分享
  5. WPF特效-拼图游戏
  6. Ubuntu中如何使用root用户
  7. Macbook全系列详细分析及购机指南
  8. 【渝粤题库】国家开放大学2021春1032成本管理题目
  9. 快速入门容器服务,创建Kubernetes集群
  10. Python退出命令-为什么要使用这么多?何时使用?
  11. 多层full-connect 神经网络测试
  12. poi导出word模板项目实例(一个文件)
  13. CCNA认证考试介绍
  14. matlab DSP6678,TMS320C6678开发例程使用手册(8)
  15. 解决Perhaps JAVA_HOME does not point to the JDK.
  16. C语言中期报告模板,毕业设计中期报告模板.doc
  17. python用四个圆画成花_秘籍:学画牡丹技法要领,不轻易外传...
  18. 小白鼠测试---VR头戴设备-暴风魔镜4
  19. 写的不错的家庭关系的文章,转自天涯。《2》
  20. 记录seata初踩坑

热门文章

  1. docker gpu 创建 训练环境_巧用 Docker 快速部署 GPU 环境
  2. 数据库系统原理笔记:关系数据库设计
  3. Python基础——continute与break(循环控制)
  4. 吴宗宪经典暴笑语录(笑不死你肯定是个异类)
  5. SCI论文从入门到精通(一)——如何选题
  6. javascript 的module 模块化
  7. Python3安装turtle提示错误:Command python setup.py egg_info failed with error code 1
  8. Ajax提交表单数据(包含文件)
  9. 如何禁止TextBox的记忆功能
  10. Linq在sharepoint中的查询