删除归档日志的过程
以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;
好了,归档日志已经删除了,ORA-00257的错误不会再发生了。下面我们静下心来看看,如何查看与归档日志存放的相关参数吧:
2. 看看archiv log所在位置
3. 一般VALUE为空时,可以用archive log list;检查一下归档目录和log sequence
4. 检查flash recovery area的使用情况,可以看见archivelog已经很大了,达到96.62 FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
5. 计算flash recovery area已经占用的空间 SUM(PERCENT_SPACE_USED)*3/100 7 上述结果告诉我们,归档位置用的是默认值,放在flash_recovery_area下(db_recovery_file_dest目录=/u01/app/oracle/flash_recovery_area) [root@sha3 10.2.0]# echo $ORACLE_BASE /u01/app/oracle 另外,如果是测试环境,不建议开启归档模式,因为归档模式会占用大量硬盘空间,一旦硬盘空间被占满,开发人员就会遇到ORA-00257的错误。
|
|
来自: AlPacido > 《02_Oralce》