解决归档空间满一例

---解决归档日志空间满的问题

今天在检查一个测试库的时候,发现一个平常都起着的一个测试库竟然都没有打开,处在mount状态

SQL> select open_mode from v$database;

OPEN_MODE

----------

MOUNTED

--执行打开的语句报错,从错误里看到这是一个典型的没有归档空间的问题

SQL> alter database open;

alter database open

* 第 1 行出现错误: ORA-16014: 日志 1 的序列号 890 未归档, 没有可用的目的地

ORA-00312: 联机日志 1 线程 1: 'C:ORACLEPRODUCT10.2.0ORADATAPSDB0REDO01.LOG'

--查看当前归档

SQL> archive log list

数据库日志模式            存档模式

自动存档             启用

存档终点            USE_DB_RECOVERY_FILE_DEST

最早的联机日志序列     890

下一个存档日志序列   890

当前日志序列           892

--查看归档参数

SQL> show parameter recovery

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

db_recovery_file_dest                string      C:oracleproduct10.2.0flash                                                 

_recovery_area db_recovery_file_dest_size           big integer 2G

recovery_parallelism                 integer     0

--查看当前日志序列

SQL> select group#,sequence#,status from v$log;

    GROUP#  SEQUENCE# STATUS

---------- ---------- ----------------         

1        890 INACTIVE         

3        892 CURRENT         

2        891 INACTIVE

--进入归档目录删掉了大批日志信息

C:oracleproduct10.2.0flash_recovery_area  手动删除日志

--再次打开数据库,还是报错 这是因为刚才删除日志是用的操作系统命令,ORACLE并不知道,所以还是报错

SQL> alter database open;

alter database open

* 第 1 行出现错误: ORA-16038: 日志 1 序列号 890 无法归档

ORA-19809: 超出了恢复文件数的限制 ORA-00312: 联机日志 1 线程 1: 'C:ORACLEPRODUCT10.2.0ORADATAPSDB0REDO01.LOG'

--登陆RMAN  删除一下归档日志在控制文件的记录

D: enqinglei>rman target /

恢复管理器: Release 10.2.0.1.0 - Production on 星期三 5月 14 14:28:25 2014

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

已连接到目标数据库: PSDB0 (DBID=1088542104, 未打开)

RMAN> crosscheck archivelog all;

使用目标数据库控制文件替代恢复目录 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: sid=64 devtype=DISK 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_18O1_MF_1_875_9O0XNOYM_.ARC 记录 ID=109 时间戳 =845196567 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_21O1_MF_1_876_9O8TJZT8_.ARC 记录 ID=110 时间戳 =845455521 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_22O1_MF_1_877_9OCGKKWR_.ARC 记录 ID=111 时间戳 =845541555 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_23O1_MF_1_878_9OG2LZ5R_.ARC 记录 ID=112 时间戳 =845627616 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_24O1_MF_1_879_9OJQK61P_.ARC 记录 ID=113 时间戳 =845714600 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_25O1_MF_1_880_9OMD7WFY_.ARC 记录 ID=114 时间戳 =845801341 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_28O1_MF_1_881_9OV9H373_.ARC 记录 ID=115 时间戳 =846060644 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_29O1_MF_1_882_9OXXLWD2_.ARC 记录 ID=116 时间戳 =846146782 对归档日志的验证成功 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_29O1_MF_1_883_9OZD4DBJ_.ARC 记录 ID=117 时间戳 =846194446 对归档日志的验证失败 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_05_04O1_MF_1_884_9PC2R3M0_.ARC 记录 ID=118 时间戳 =846664454 对归档日志的验证失败 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_05_05O1_MF_1_885_9PFQGT4R_.ARC 记录 ID=119 时间戳 =846751196 对归档日志的验证失败 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_05_06O1_MF_1_886_9PJC3X7N_.ARC 记录 ID=120 时间戳 =846836862 对归档日志的验证失败 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_05_07O1_MF_1_887_9PM0FZQT_.ARC 记录 ID=121 时间戳 =846924225 对归档日志的验证失败 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_05_08O1_MF_1_888_9POO8KB7_.ARC 记录 ID=122 时间戳 =847011090 对归档日志的验证失败 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_05_09O1_MF_1_889_9PR8GXCM_.ARC 记录 ID=123 时间戳 =847096287 对归档日志的验证失败 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_05_14O1_MF_1_890_9Q62P30S_.ARC 记录 ID=124 时间戳 =847549123 对归档日志的验证失败 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_05_14O1_MF_1_891_9Q62P46R_.ARC 记录 ID=125 时间戳 =847549125 已交叉检验的 17 对象

--删除已经无效的文件记录

RMAN> delete expired archivelog all;

释放的通道: ORA_DISK_1 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: sid=64 devtype=DISK

已存档的日志副本列表 关键字     Thrd Seq     S 短时间     名称 ------- ---- ------- - ---------- ---- 109     1    875     X 17-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_18O1_MF_1_875_9O0XNOYM_.ARC 110     1    876     X 18-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_21O1_MF_1_876_9O8TJZT8_.ARC 111     1    877     X 21-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_22O1_MF_1_877_9OCGKKWR_.ARC 112     1    878     X 22-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_23O1_MF_1_878_9OG2LZ5R_.ARC 113     1    879     X 23-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_24O1_MF_1_879_9OJQK61P_.ARC 114     1    880     X 24-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_25O1_MF_1_880_9OMD7WFY_.ARC 115     1    881     X 25-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_28O1_MF_1_881_9OV9H373_.ARC 116     1    882     X 28-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_29O1_MF_1_882_9OXXLWD2_.ARC 117     1    883     X 29-4月 -14 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_29O1_MF_1_883_9OZD4DBJ_.ARC

是否确定要删除以上对象 (输入 YES 或 NO)? YES 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_18O1_MF_1_875_9O0XNOYM_.ARC 记录 ID=109 时间戳 =845196567 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_21O1_MF_1_876_9O8TJZT8_.ARC 记录 ID=110 时间戳 =845455521 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_22O1_MF_1_877_9OCGKKWR_.ARC 记录 ID=111 时间戳 =845541555 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_23O1_MF_1_878_9OG2LZ5R_.ARC 记录 ID=112 时间戳 =845627616 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_24O1_MF_1_879_9OJQK61P_.ARC 记录 ID=113 时间戳 =845714600 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_25O1_MF_1_880_9OMD7WFY_.ARC 记录 ID=114 时间戳 =845801341 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_28O1_MF_1_881_9OV9H373_.ARC 记录 ID=115 时间戳 =846060644 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_29O1_MF_1_882_9OXXLWD2_.ARC 记录 ID=116 时间戳 =846146782 已删除的存档日志 存档日志文件名 =C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAPSDB0ARCHIVELOG2014_04_29O1_MF_1_883_9OZD4DBJ_.ARC 记录 ID=117 时间戳 =846194446 9 EXPIRED 对象已删除

--选择再尝试打开数据,可以打开

SQL> alter database open;

数据库已更改。

原文地址:https://www.cnblogs.com/myrunning/p/3987707.html