如何正确删除Oracle归档日志 归档日志的存储空间在启动数据库后检查告警日志时提示该容量已使用81%,分析了一下,找到了原因,记录如下: 在controlfile 中记录着每个archiv elog 的相关信息,当我们在OS 下把这些归档文件delete 掉以后,这些信息并未从controlfile 中清除,所以oracle 并不知道这些文件已经不存在,所以相应的在容量上也并未调整,此时,需要我们做手工调整,使得controlfile 中的记录与实际存在的归档日志文件保持一致。 可以尝试以下方法: 1. 进入 rman 2. connect target / 或者 connect target/@db_name (连接远程数据库 如果要连接的目标数据库是一个远程数据库,那么必须在建立连接时指定一个有效的网络服务名,同时你本地的tnsname.ora 文件中也必须已经建立了该网络服务名的正确配置。示例如下: C:\Docu ments and Settings\Administrator>rman target sy s/change_on_install@testdb) 3. crosscheck archiv elog all; 4. delete ex pired archiv elog all; 以上语句的解释说明: (1)crosscheck archiv elog all:检查控制文件和实际物理文件的差别 (2)delete ex pired archiv elog all:同步控制文件的信息和实际物理文件的信息 如果单独执行 crosscheck 而不执行 delete 那么操作还是失败的,因为并未达到同步控制文件和实际物理文件的目的。 这时候我们再去 OEM 中看就一定看不到,如果你的从来没有做过这个动作的话,我们可以比较从这个动作前的controlfile 后动作后的controlfile 的大小! ORACLE 正确删除归档并回收空间的方法 一个ORACLE 归档日志经常满,表现为/oraarchiv e 这个文件空间占用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 天前的归档日志,如果使用了闪回功能,也会删除闪回的数据。 同样道理,也...