DBLOG
» WTF
Toggle navigation
DBLOG
主页
1、用户
2、各种方案
3、备份恢复
4、表空间相关
5、OGG
6、文件管理
7、常见故障分析
8、DG
9、集群相关
About Me
归档
标签
3、归档日志空间维护
无
2025-08-29 00:08:05
2
0
0
admin
[TOC] ### 1. 查询当前归档模式 使用 `sys` 用户登录并查询当前归档模式: ```sh sqlplus / as sysdba ``` ```sql SQL> archive log list; ``` 示例输出: ```sql Database log mode Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 3 Current log sequence 4 ``` ### 2. 查询归档日志存放路径和空间大小 ```sql SQL> show parameter db_recovery ``` 示例输出: ```sql db_recovery_file_dest string +DATA db_recovery_file_dest_size big integer 100G ``` ### 3. 检查归档空间使用情况 ```sql SQL> select * from V$FLASH_RECOVERY_AREA_USAGE; ``` ### 4. 手动清理归档日志 删除1天以前的归档日志: ```sh su - oracle rman target / ``` ```sql Recovery Manager: Release 11.2.0.4.0 - Production on Wed Oct 18 19:50:09 2023 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: WTEST (DBID=137171039) ``` ```sql rman> delete noprompt archivelog all completed before 'sysdate-1'; ``` 删除所有归档日志: ```sql rman> delete archivelog all; ``` 强制删除所有归档日志: ```sql rman> delete force archivelog all; ``` 单机环境下需要手动删除服务器上的日志文件: ```sh find . -mtime +3 | xargs -n 1 -i rm -f {} ``` ### 5. 自动清理归档日志 添加定时任务以自动清理归档日志: ```sh crontab -l ``` 示例输出: ```sh 0 04 * * * /u01/backup/del_arch.sh ``` 创建删除归档日志的脚本: ```sh vi /home/oracle/del_arch.sh ``` 脚本内容: ```sh #!/bin/bash source /home/oracle/.bash_profile rman target / log=/u01/backup/del_arch.log <<EOF crosscheck archivelog all; delete noprompt archivelog all completed before 'sysdate-1'; exit; EOF ```
上一篇:
3、内存占用过高,缓存不释放
下一篇:
3、静默安装
0
赞
2 人读过
新浪微博
微信
腾讯微博
QQ空间
人人网