【Oracle】 rman 删除归档日志的命令

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:
   因为数据仓库上asm的磁盘空间不足,需要删除早期的归档日志,查看资料有以下两种方式:
delete archivelog until time 'sysdate-N';
delete archivelog all completed before 'sysdate-N';
这两个命令的差别在哪里呢?
使用list 命令来查看一下究竟...
RMAN>  list archivelog until time 'sysdate-1';
using target database control file instead of recovery catalog
List of Archived Log Copies for database with db_unique_name YANGDB
=====================================================================
Key     Thrd Seq     S Low Time 
------- ---- ------- - ---------
459     1    463     A 08-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_463_762800109.log
460     1    464     A 08-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_464_762800109.log
461     1    465     A 08-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_465_762800109.log
462     1    466     A 08-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_466_762800109.log
463     1    467     A 09-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_467_762800109.log
464     1    468     A 09-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_468_762800109.log
465     1    469     A 10-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_469_762800109.log
466     1    470     A 11-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_470_762800109.log
467     1    471     A 11-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_471_762800109.log
468     1    472     A 12-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_472_762800109.log
469     1    473     A 13-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_473_762800109.log
470     1    474     A 13-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_474_762800109.log
471     1    475     A 14-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_475_762800109.log
472     1    476     A 15-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_476_762800109.log
归档日志的序列号码到476
RMAN> list archivelog all completed before 'sysdate-1';
List of Archived Log Copies for database with db_unique_name YANGDB
=====================================================================
Key     Thrd Seq     S Low Time 
------- ---- ------- - ---------
459     1    463     A 08-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_463_762800109.log
460     1    464     A 08-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_464_762800109.log
461     1    465     A 08-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_465_762800109.log
462     1    466     A 08-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_466_762800109.log
463     1    467     A 09-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_467_762800109.log
464     1    468     A 09-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_468_762800109.log
465     1    469     A 10-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_469_762800109.log
466     1    470     A 11-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_470_762800109.log
467     1    471     A 11-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_471_762800109.log
468     1    472     A 12-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_472_762800109.log
469     1    473     A 13-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_473_762800109.log
470     1    474     A 13-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_474_762800109.log
471     1    475     A 14-JAN-12 Name: /opt/oracle/yangdb_arch/yangdb_1_475_762800109.log
归档日志的序列号码到475 
查看v$archived_log 视图从中获取 时间和序列号信息!
SYS@yangdb> select THREAD#,sequence#,FIRST_TIME,COMPLETION_TIME  
2   from v$archived_log order by thread#,sequence#;

THREAD# SEQUENCE# FIRST_TIME      COMPLETION_TIME
------- ---------- -------------- -------------------
1        470  2012-01-11 11:00:10  2012-01-11 22:08:23
1        471  2012-01-11 22:08:20  2012-01-12 17:00:10
1        472  2012-01-12 17:00:10  2012-01-13 02:00:28
1        473  2012-01-13 02:00:28  2012-01-13 22:09:56
1        474  2012-01-13 22:09:55  2012-01-14 22:01:02
1        475  2012-01-14 22:01:02  2012-01-15 06:46:14 ==list archivelog all completed 以COMPLETION_TIME为基准   
1        476  2012-01-15 06:46:14  2012-01-30 14:10:18 ==list archivelog until 以FIRST_TIME 为基准 编号476的日志横跨15号和30号两天,以first_time的值来截取!
1        477  2012-01-30 14:10:15  2012-01-30 14:10:23
1        478  2012-01-30 14:10:22  2012-01-30 14:10:29
1        479  2012-01-30 14:10:28  2012-01-30 14:10:33
1        480  2012-01-30 14:10:32  2012-01-30 14:10:40  

总结:
delete archivelog until time 'sysdate-N';
该命令删除日志时的时间基准是first_name
delete archivelog all completed before 'sysdate-N';
该命令删除日志时的时间基准是completion_time   
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
5月前
|
存储 Oracle 关系型数据库
oracle数据恢复—oracle数据库执行错误truncate命令的数据恢复案例
oracle数据库误执行truncate命令导致数据丢失是一种常见情况。通常情况下,oracle数据库误操作删除数据只需要通过备份恢复数据即可。也会碰到一些特殊情况,例如数据库备份无法使用或者还原报错等。下面和大家分享一例oracle数据库误执行truncate命令导致数据丢失的数据库数据恢复过程。
|
10月前
|
监控 Oracle 关系型数据库
Mysql、Oracle审计日志的开启
通过上述步骤,可以在 MySQL 和 Oracle 数据库中启用和配置审计日志。这些日志对于监控数据库操作、提高安全性和满足合规性要求非常重要。确保正确配置审计参数和策略,定期查看和分析审计日志,有助于及时发现并处理潜在的安全问题。
585 11
|
12月前
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的控制文件与归档日志文件
本文介绍了Oracle数据库中的控制文件和归档日志文件。控制文件记录了数据库的物理结构信息,如数据库名、数据文件和联机日志文件的位置等。为了保护数据库,通常会进行控制文件的多路复用。归档日志文件是联机重做日志文件的副本,用于记录数据库的变更历史。文章还提供了相关SQL语句,帮助查看和设置数据库的日志模式。
276 1
【赵渝强老师】Oracle的控制文件与归档日志文件
|
12月前
|
Oracle 关系型数据库 数据库
【赵渝强老师】Oracle的参数文件与告警日志文件
本文介绍了Oracle数据库的参数文件和告警日志文件。参数文件分为初始化参数文件(PFile)和服务器端参数文件(SPFile),在数据库启动时读取并分配资源。告警日志文件记录了数据库的重要活动、错误和警告信息,帮助诊断问题。文中还提供了相关视频讲解和示例代码。
259 1
|
12月前
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的联机重做日志文件与数据写入过程
在Oracle数据库中,联机重做日志文件记录了数据库的变化,用于实例恢复。每个数据库有多组联机重做日志,每组建议至少有两个成员。通过SQL语句可查看日志文件信息。视频讲解和示意图进一步解释了这一过程。
178 0
|
SQL 运维 Oracle
入门级Oracle 11g日常运维命令总结
入门级Oracle 11g日常运维命令总结
552 1
|
运维 Oracle 前端开发
Oracle 11g RAC集群日常运维命令总结
Oracle 11g RAC集群日常运维命令总结
472 2
|
SQL Oracle 关系型数据库
"揭秘!一键解锁Oracle日志清理魔法,让海量归档日志无处遁形,守护数据库健康,告别磁盘空间告急噩梦!"
【8月更文挑战第9天】随着Oracle数据库在企业应用中的普及,归档日志管理对保持数据库健康至关重要。归档日志记录所有更改,对数据恢复极为重要,但也可能迅速占用大量磁盘空间影响性能。利用Oracle提供的RMAN工具,可通过编写Shell脚本来自动清理归档日志。脚本包括设置环境变量、连接数据库、检查和删除指定时间前的日志,并记录执行情况。通过Cron作业定时运行脚本,可有效管理日志文件,确保数据库稳定运行。
511 7
|
Oracle 安全 关系型数据库
|
SQL Oracle 关系型数据库
关系型数据库Oracle设置 RMAN 环境:
【7月更文挑战第25天】
253 2

推荐镜像

更多