一、首先删除归档日志物理文件,归档日志一般都是位于archive目录下,AIX系统下文件格式为“1_17884_667758186.dbf”,建议操作前先对数据库进行备份,删除时至少保留最近几天的日志用于数据库恢复。
二、把归档日志的物理文件删除后,我们就可以正常登入ORACLE了,但是还没完全把归档日志删除干净,ORACLE的controlfile中仍然记录着这些archivelog的信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,接下去我们要做的就是这个工作。
我们利用RMAN进行删除操作,操作步骤如下:(window客户端系统为例)
1.指定数据库实例
C:/Documents and Settings/Administrator>SET ORACLE_SID =orcl
2.连接数据库
C:/Documents and Settings/Administrator>RMAN TARGET SYS/sysadmin@orcl
3.查看归档日志的状态
RMAN> list archivelog all;
4.手工删除归档日志文件
RMAN> 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子项上做很多操作,实现更复杂的功能
5.退出rman
RMAN> exit
附带说明:RMAN 是Oracle数据库软件自带的备份恢复工具,一种是类似于DOS,通过键盘操作的 命令行方式。
通过RMAN连接本地数据库非常简单,以 W indows 平台为例,进入到命令提示符界面:
C:/Documents and Settings/junsansi> SET ORACLE_SID =jssbook
C:/Documents and Settings/junsansi> RMAN TARGET /
Recovery Manager: Release 10.2.0.1.0 - Production on Tue Mar 17 21:12:17 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
connected to target database: JSSBOOK (DBID=1415261003)
- RMAN>
如上所示,使用RMAN连接本地数据库之前必须首先设置操作系统环境变量:ORACLE_SID,并指定该值等于目标数据库的实例名。如果本地库只有一个实例并已经设置了ORACLE_SID环境变量,则不需要再指定ORACLE_SID。RMAN会自动连接到默认实例。
当然,你也可以先启动RMAN,然后再通过CONNECT命令来连接目标数据库,如下所示:
C:/Documents and Settings/junsansi> RMAN
Recovery Manager: Release 10.2.0.1.0 - Production on Tue Mar 17 21:12:36 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
RMAN> connect target /
- connected to target database: JSSBOOK (DBID=1415261003)
本地连接允许使用操作系统验证,因此上述示例都不需要输入用户名和密码,不过如果本地没有启用操作系统身份验证的话,就必须指定具有相应权限的用户名和密码。
需要注意,Linux/UNIX 环境下设置操作系统环境变量应使用 export 命令,另外ORACLE_SID必须为大写。例如:
[oracle@yans1 ~ ]$ export ORACLE_SID=test08
[oracle@yans1 ~ ]$ rman target /
Recovery Manager: Release 10.2.0.3.0 - Production on Tue Mar 17 16:08:32 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
connected to target database: TEST08 (DBID=3812548755)
- RMAN>
连接远程数据库
如果要连接的目标数据库是一个远程数据库,那么必须在建立连接时指定一个有效的网络服务名(Net Service Name),本地的tnsname.ora文件中必须已经建立了该网络服务名的正确配置。连接示例如下:
C:/Documents and Settings/junsansi> RMAN TARGET SYS/CHANGE_ON_INSTALL@TESTDB
Recovery Manager: Release 10.2.0.1.0 - Production on Tue Mar 17 16:12:32 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
connected to target database: TESTDB (DBID=2220262593)
- RMAN>
相关推荐
#功能:自动删除ORACLE归档日志文件 #删除方式:rman ,deletearchivelog #调用方式:可单独调用,或在job_clean_archivlog.sh脚本中根据需要调用见另外的附件) ##############################################
### 如何正确删除Oracle归档日志 #### 一、问题背景 在Oracle数据库的日常运维工作中,归档日志的管理和清理是一项重要的任务。随着业务的发展和数据的增长,归档日志会不断累积,占据大量的磁盘空间。如果不及时...
ORACLE归档日志设置 ORACLE数据库的归档日志设置是一种重要的机制,旨在保障数据库的安全性和灾难恢复能力。通过设置数据库的日志模式和自动归档模式,可以确保数据库的可靠性和可恢复性。 数据库日志模式的设置是...
#功能:当空间占用率高于60%时自动删除ORACLE归档日志文件 # #删除方式:高于60%时使用rman+deletearchivelog,高于79%时使用武力删除 #调用方式:可单独调用,或配置定时任务自动执行脚本(会调用clean_archivelog....
Oracle 归档日志删除 在 Oracle 中,归档日志的删除是非常重要的,因为归档日志满可能会导致数据库启动不起来或数据库不能正常使用。以下是关于 Oracle 归档日志删除的知识点: 查看 Oracle 归档日志大小 查看 ...
Oracle归档日志的开启、关闭和删除 Oracle数据库中的归档日志(Archive Log)是一种重要的日志机制,用于记录数据库中的所有操作,以便在数据库崩溃或系统故障时能够快速恢复数据。然而,打开归档日志模式后,会...
- 如果数据库配置了自动归档日志删除策略,则不需要手动执行删除操作。 - 定期检查归档日志目录的空间使用情况,确保有足够的空间容纳新的归档日志文件。 - 对于大型数据库环境,建议使用自动化脚本或定时任务来管理...
删除Oracle归档日志的正确步骤如下: 1. **启动RMAN**:首先,需要以Oracle用户身份登录到数据库服务器,然后启动RMAN。 2. **连接目标数据库**:在RMAN环境中,使用`connect target /`命令连接到目标数据库。 3....
### Oracle 删除归档日志实例 #### 背景与目的 在Oracle数据库管理中,归档日志的处理是一项重要的任务。对于选择了非归档模式但仍希望使用闪回等功能的数据库来说,随着时间的推移,归档日志可能会占用大量的磁盘...
综上所述,了解和管理Oracle归档日志对于确保数据库的稳定运行至关重要。通过对归档日志的监控、适时的删除策略和合理的空间规划,可以有效避免因归档日志空间不足引发的问题,保障数据库的高效运行。
为了释放空间,需要定时删除归档日志文件。以下是使用 Windows 计划任务执行删除归档脚本的步骤。 是什么是 RMAN? RMAN 是 Oracle 数据库中的备份和恢复工具,用于管理数据库的备份和恢复。RMAN 提供了多种类型的...
归档日志是Oracle数据库的重要组成部分,它们记录了自上次检查点以来的所有事务,用于在发生故障时进行恢复。在Oracle RAC环境中,正确配置归档日志路径至关重要,因为它涉及到数据保护和集群间的协调。 在Oracle ...
### Oracle归档日志配置与RMAN备份策略详解 #### 一、Oracle归档日志配置步骤 在Oracle数据库管理中,归档日志模式是非常重要的一个环节,它能够确保数据库在发生故障后能够恢复到最新的状态。下面将详细介绍如何...
ORACLE数据库调整归档日志空间大小 ORACLE数据库的归档日志是一种重要的灾难恢复机制,它可以帮助数据库管理员在发生灾难时恢复数据库。然而,如果不正确地配置和维护归档日志,可能会导致数据库无法启动或连接。...
3. 删除七天前的归档日志:DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7'; 4. 再次查看归档内容使用情况:select * from V$FLASH_RECOVERY_AREA_USAGE; 归档日志的重要性 归档日志对于数据库的恢复和备份...
Oracle RAC 集群开启归档日志 Oracle RAC 集群开启归档日志是指在 Oracle RAC 集群环境中启用归档日志功能,以便提高数据库的可靠性和可维护性。为了实现这一功能,需要修改集群参数文件,重启数据库。 在开启归档...
本文将详细介绍如何利用提供的.sh脚本实现Linux下Oracle归档日志的自动清理,并解释脚本中的关键部分。 首先,我们需要创建一个.sh文件来存放脚本代码。这个脚本的目的是自动删除已过期或不再需要的归档日志,以...
2. 脚本方式:在提供的文件列表中,`del_stdby_archivelog_rman.sh` 和 `tmp_delete_archive_rman.sh` 可能是自定义的shell脚本,用于调用RMAN命令来删除特定条件的归档日志。这些脚本可能包含逻辑,如检查备库的...