数据库开归档后,在线的redo log切换后都会保存到磁盘上,记录着数据库所有数据变化,只要保存归档日志,数据库异常宕机,数据丢失,都可以恢复。
但是开启归档后,对系统有部分消耗,且对归档日志要定期迁移或者清理,如果归档目录满了之后,日志可能会无法归档,从而导致ora-03113错误。
虽然会有部分影响和工作量,但是针对归档日志的重要性,生成环境是要求必须开启归档。
一般重要的生产库都会保留完整的归档日志,以防万一,利用系统级的脚本或者复制软件拷贝到磁盘。
有时候也要定期清理归档日志,单纯从磁盘上物理删除归档文件,数据库不会自动释放空间,下面是使用RMAN清理归档日志的过程
1、设置ORACLE_SID
set $ORACLE_SID=oracle
2、查看闪回区归档所占空间
sqlplus / as sysdba
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
3、rman连接到目标库
RMAN TARGET /
4、检查一些无用的archivelog(如物理上删除的)
RMAN> crosscheck archivelog all;
5、删除过期无用的归档
RMAN> delete expired archivelog all;
6、或者指定时间,删除时间点以前的归档日志
昨天以前:delete archivelog until time 'sysdate-1' ;
当前时刻:delete archivelog until time 'sysdate';
但是开启归档后,对系统有部分消耗,且对归档日志要定期迁移或者清理,如果归档目录满了之后,日志可能会无法归档,从而导致ora-03113错误。
虽然会有部分影响和工作量,但是针对归档日志的重要性,生成环境是要求必须开启归档。
一般重要的生产库都会保留完整的归档日志,以防万一,利用系统级的脚本或者复制软件拷贝到磁盘。
有时候也要定期清理归档日志,单纯从磁盘上物理删除归档文件,数据库不会自动释放空间,下面是使用RMAN清理归档日志的过程
1、设置ORACLE_SID
set $ORACLE_SID=oracle
2、查看闪回区归档所占空间
sqlplus / as sysdba
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
3、rman连接到目标库
RMAN TARGET /
4、检查一些无用的archivelog(如物理上删除的)
RMAN> crosscheck archivelog all;
5、删除过期无用的归档
RMAN> delete expired archivelog all;
6、或者指定时间,删除时间点以前的归档日志
昨天以前:delete archivelog until time 'sysdate-1' ;
当前时刻:delete archivelog until time 'sysdate';
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




