ksvcreate: Process creation failed

来源:互联网 发布:excel数据图表 编辑:程序博客网 时间:2024/05/16 18:40

昨日数据库巡检,用户的测试库在数据库开启、关闭时过程漫长,数据库连接以及简单的查询反应很慢,查看alert日志:

Shutting down instance: further logons disabled
Thu Feb 13 12:24:56 2014
ksvcreate: Process(q001) creation failed
Thu Feb 13 12:26:16 2014
ksvcreate: Process(q001) creation failed
Thu Feb 13 12:27:34 2014
ksvcreate: Process(q001) creation failed
Thu Feb 13 12:29:18 2014
Stopping background process QMNC
Thu Feb 13 12:29:18 2014

没发现有其他错误


ksvcreate: Process creation failed错误信息一般在Oracle实例在创建一些辅助后台进程(如mmon的子进程m00x或者并行子进程p00x等)时出现进程启动失败时出现,而造成该错误的可能性有多种,包括Oracle实例资源不足、操作系统资源不足等等。其中较为常见的是实例instance的process使用达到上限,可以通过查询v$resource_limit视图来了解实例生命周期内是否发生过process总数暴满的情况:

SQL> select resource_name,MAX_UTILIZATION,LIMIT_VALUE from v$resource_limit where resource_name in ('processes','sessions');


RESOURCE_NAME                  MAX_UTILIZATION LIMIT_VALU
------------------------------ --------------- ----------
processes                                   20         20
sessions                                    25         27


从以上V$resource_limit视图的输出来看,极有可能是processes总数达到上限导致了新的后台辅助进程创建失败,我们可以增加processes的值:


SQL> alter system set processes=150 scope=spfile;
增加processes到150

system altered.
SQL> startup force




0 0