热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

升级不正确导致ORA-27468错误及闪回区满(ORA-16014)

Oracle10.2.0.5环境告警日志出现ORA-27468错误。在MOS文档ORA-12012ORA-27468:SYS.PURGE_LOGisLockedbyAnotherProcess

Oracle 10.2.0.5环境告警日志出现ORA-27468错误。在MOS文档ORA-12012 ORA-27468: SYS.PURGE_LOG is Locked by Another Process

Oracle 10.2.0.5环境告警日志出现ORA-27468错误。

查看预警日志:

Errors in file /u01/app/oracle/admin/crab/bdump/crab_j001_23669.trc:
ORA-12012: 自动执行作业 5329 出错
ORA-27468: "SYS.PURGE_LOG" 被另一进程锁定
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j000_23667.trc:
ORA-12012: 自动执行作业 42568 出错
ORA-27468: "EXFSYS.RLM$SCHDNEGACTION" 被另一进程锁定
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j002_23671.trc:
ORA-12012: 自动执行作业 8886 出错
ORA-27468: "SYS.GATHER_STATS_JOB" 被另一进程锁定
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j001_23669.trc:
ORA-12012: 自动执行作业 42567 出错
ORA-27468: "EXFSYS.RLM$EVTCLEANUP" 被另一进程锁定
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j000_23667.trc:
ORA-12012: 自动执行作业 8887 出错
ORA-27468: "SYS.AUTO_SPACE_ADVISOR_JOB" 被另一进程锁定
[oracle@RedHat4 bdump]$ tail -20 /u01/app/oracle/admin/crab/bdump/alert_crab.log
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j001_23669.trc:
ORA-12012: 自动执行作业 5329 出错
ORA-27468: "SYS.PURGE_LOG" 被另一进程锁定
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j000_23667.trc:
ORA-12012: 自动执行作业 42568 出错
ORA-27468: "EXFSYS.RLM$SCHDNEGACTION" 被另一进程锁定
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j002_23671.trc:
ORA-12012: 自动执行作业 8886 出错
ORA-27468: "SYS.GATHER_STATS_JOB" 被另一进程锁定
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j001_23669.trc:
ORA-12012: 自动执行作业 42567 出错
ORA-27468: "EXFSYS.RLM$EVTCLEANUP" 被另一进程锁定
Fri Jun 27 23:14:22 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_j000_23667.trc:
ORA-12012: 自动执行作业 8887 出错
ORA-27468: "SYS.AUTO_SPACE_ADVISOR_JOB" 被另一进程锁定

导致这个错误的原因在于升级时没有执行catupgrd.sql,而是执行了建库的部分脚本如catalog.sql和catproc.sql,这导致只有CATALOG视图和系统的PACKAGE以及TYPE的版本更新到10.2.0.5,而其他数据库中组件的版本并没有升级,仍然是10.2.0.1。

在MOS文档ORA-12012 ORA-27468: "SYS.PURGE_LOG" is Locked by Another Process [ID 751884.1]中介绍了这个错误,这个问题可能发生在10.2.0.2到10.2.0.5之间,解决问题的方法很简单,在闲时执行catupgrd.sql,完成升级组件的后续操作既可。

在执行catupgrd.sql期间还遇到Oracle闪回区满(ORA-16014)

Sat Jun 28 16:30:31 CST 2014
ORA-16038: 日志 3 sequence# 52 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 3 线程 1: '/u01/app/oracle/oradata/crab/redo03.log'
Sat Jun 28 16:30:31 CST 2014
Errors in file /u01/app/oracle/admin/crab/bdump/crab_arc1_1250.trc:
ORA-16038: 日志 3 sequence# 52 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 3 线程 1: '/u01/app/oracle/oradata/crab/redo03.log'
Sat Jun 28 16:31:31 CST 2014
ARCH: Archival stopped, error occurred. Will continue retrying
Sat Jun 28 16:31:31 CST 2014
ORACLE Instance crab - Archival Error
Sat Jun 28 16:31:31 CST 2014
ORA-16014: 日志 3 sequence# 52 未归档, 没有可用的目的地

--查看归档模式
SQL> archive log list;

--归档空间使用率
SQL>select * from v$flash_recovery_area_usage;

--闪回区所占用的空间
SQL>select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

解决办法:
-- 扩大闪回区空间
SQL>alter system set db_recovery_file_dest_size=3g scope=both;

System altered.
以下命令需要在RMAN下:

rman target/
--删除备份
crosscheck backupset;
delete noprompt expired backupset;
delete obsolete;
delete noprompt expired backup;
delete noprompt expired copy;

--清掉归档
--清掉过期的归档
crosscheck archivelog all;
delete noprompt expired archivelog all;
--要还不够,强制删除掉指定天数前的归档
delete noprompt archivelog all completed before 'sysdate-7';

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2


推荐阅读
author-avatar
手机用户2502938015
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有