ORA-00600 [kmgs_parameter_update_timeout_1], [27072] ORA-27072 解决方法

2024-04-04 01:58

本文主要是介绍ORA-00600 [kmgs_parameter_update_timeout_1], [27072] ORA-27072 解决方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

一.        问题说明

 

数据库alert log中的信息如下:

Mon Jul 30 22:01:00 2012

Errors in file /g01/app/oracle/diag/rdbms/gumd/gumd/trace/gumd_mmon_21407.trc  (incident=76981):

ORA-00600: 内部错误代码,参数: [kmgs_parameter_update_timeout_1], [27072], [], [], [],[], [], [], [], [], [], []

ORA-27072: 文件 I/O 错误

Linux-x86_64 Error: 9: Bad file descriptor

Additional information: 4

Additional information: 4

Additional information: -1

Incident details in:/g01/app/oracle/diag/rdbms/gumd/gumd/incident/incdir_76981/gumd_mmon_21407_i76981.trc

Mon Jul 30 22:01:02 2012

Trace dumping is performingid=[cdmp_20120730220102]

Mon Jul 30 22:01:04 2012

Errors in file/g01/app/oracle/diag/rdbms/gumd/gumd/trace/gumd_dbw0_3375.trc  (incident=76937):

ORA-00600: 内部错误代码,参数:[kmgs_parameter_update_timeout_1], [27072], [], [], [], [], [], [], [], [], [], []

ORA-27072: 文件 I/O 错误

Linux-x86_64 Error: 9: Bad file descriptor

Additional information: 4

Additional information: 4

Additional information: -1

Incident details in:/g01/app/oracle/diag/rdbms/gumd/gumd/incident/incdir_76937/gumd_dbw0_3375_i76937.trc

Errors in file /g01/app/oracle/diag/rdbms/gumd/gumd/trace/gumd_dbw0_3375.trc:

ORA-00600: 内部错误代码,参数: [kmgs_parameter_update_timeout_1],[27072], [], [], [], [], [], [], [], [], [], []

ORA-27072: 文件 I/O 错误

Linux-x86_64 Error: 9: Bad file descriptor

Additional information: 4

Additional information: 4

Additional information: -1

DBW0 (ospid: 3375): terminating theinstance due to error 471

Instance terminated by DBW0, pid = 3375

 

 

二.解决方法

 

2.1 错误原因:

Starting with10g, the MMON background process manages all memory resize activity by modifyingthe related parameters. The parameter update activity is triggered by atimeout.

 

If the updatecannot be performed, several error conditions are checked to see if that couldbe the cause.

 

If we cannotmatch the current condition to the list of known exceptions, we raise theassert kmgs_parameter_update_timeout_1

In such a case,we need to look at the first argument returned with the ORA-600.
This will give you the error number of the triggering condition.

 

In the presentcase, the key error is the ORA-27091 "unable to queue I/O"
In other words, we raise such an error when a "read/write/readv/writevsystem call returned error".

 

Finally, here,we found out that the problem was actually due to the spfile having root asowner

 

导致ORA-00600: [kmgs_parameter_update_timeout_1]的原因可能有如下:

(1)    ORACLE_HOME 磁盘空间不足

(2)    包含SPFILE的文件系统损坏,导致Oracle 不能访问SPFILE.

(3)    SPFILE文件所在的用户和组,或者权限不正确。

 

2.2 解决方法:

(1)如果是权限问题,那么修改SPFILE 文件到oracle 用户,dba组就ok了。

 

(2)大部分ORA-600 [kmgs_parameter_update_timeout_1]的错误都可以尝试重建SPFILE来解决。

 

步骤如下:

--根据当前SPFILE创建pfile

SQL> createpfile='<replace_by_full_path>\init.ora' from spfile;

 

--检查新的PFILE 文件

 

--关闭数据库并用新的PFILE 启动:

SQL> shutdown immediate
SQL> startup pfile=''<replace_by_full_path_of_newly_created_pfile>';

 

--创建新的SPFILE:

SQL> create spfile from pfile;

 

--关闭数据库,用新的SPFILE启动:

SQL> shutdown immediate
SQL> startup

 

 

 

参考:

ORA-00600[kmgs_parameter_update_timeout_1], [27072] Error Crashes The Database [ID1149073.1]

ORA-600[kmgs_parameter_update_timeout_1], [27072] When Trying To Start Instance [ID 1457938.1]

ORA-600[Kmgs_parameter_update_timeout_1], [27091], [] [ID 1286640.1]

 

 

 

 

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

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

QQ:492913789

Email:ahdba@qq.com

Blog:  http://www.cndba.cn/dave

Weibo: http://weibo.com/tianlesoftware

Twitter: http://twitter.com/tianlesoftware

Facebook: http://www.facebook.com/tianlesoftware

Linkedin: http://cn.linkedin.com/in/tianlesoftware

 

 

-------加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请----

DBA1 群:62697716(满);   DBA2 群:62697977(满)  DBA3 群:62697850(满)  

DBA 超级群:63306533(满);  DBA4 群:83829929   DBA5群: 142216823

DBA6 群:158654907    DBA7 群:172855474   DBA总群:104207940

这篇关于ORA-00600 [kmgs_parameter_update_timeout_1], [27072] ORA-27072 解决方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874525

相关文章

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Java中Map.Entry()含义及方法使用代码

《Java中Map.Entry()含义及方法使用代码》:本文主要介绍Java中Map.Entry()含义及方法使用的相关资料,Map.Entry是Java中Map的静态内部接口,用于表示键值对,其... 目录前言 Map.Entry作用核心方法常见使用场景1. 遍历 Map 的所有键值对2. 直接修改 Ma

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Mybatis Plus Join使用方法示例详解

《MybatisPlusJoin使用方法示例详解》:本文主要介绍MybatisPlusJoin使用方法示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录1、pom文件2、yaml配置文件3、分页插件4、示例代码:5、测试代码6、和PageHelper结合6

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

Java中实现线程的创建和启动的方法

《Java中实现线程的创建和启动的方法》在Java中,实现线程的创建和启动是两个不同但紧密相关的概念,理解为什么要启动线程(调用start()方法)而非直接调用run()方法,是掌握多线程编程的关键,... 目录1. 线程的生命周期2. start() vs run() 的本质区别3. 为什么必须通过 st