欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

ORA-27300,ORA-27301,ORA-27302

程序员文章站 2022-04-17 18:06:33
...

运维工程师在一台IBM P750(AIX6.1)上部署了一套oracle(未建库),让我把商用的某库同其做一个DG容灾。我按正常步骤部署了DG。

运维工程师在一台IBM P750(AIX6.1)上部署了一套Oracle(未建库),让我把商用的某库同其做一个DG容灾。我按正常步骤部署了DG。

1.在备库开始日志恢复

alter database recover managed standby database using current logfile disconnect;

2.查看备库是否正常接收日志

select process,client_process,sequence#,status from v$managed_standby;

--正常接收日志

3.查看备库是否正常应用日志

select THREAD#,SEQUENCE#,ARCHIVED,APPLIED,DELETED,STATUS from v$archived_log order by 1,2;

--正常应用日志

但是我在备库的alert日志里发现有如下报错

Mon Mar 24 14:11:14 2014

Process startup failed, error stack:

Errors in file /apps/oracle/diag/rdbms/primary/egap/trace/egap_psp0_18481392.trc:

ORA-27300: OS system dependent operation:fork failed with status: 2

ORA-27301: OS failure message: No such file or directory

ORA-27302: failure occurred at: skgpspawn5

Process PR0S died, see its trace file

后来发现是参数maxuproc不足导致,该参数默认只有128,,该参数决定了每个操作系统用户允许连接的最大进程数,该参数不足时alert日志中会报如上错误。

正常在装rac时这些参数我们都会提前检查,并设为oracle要求的值(要求值为16384),这里可能是运维根本没有检查该参数

检查该参数

lsattr -E -l sys0 -a maxuproc

root@egisbdb1:/#lsattr -E -l sys0 -a maxuproc

maxuproc 128 Maximum number of PROCESSES allowed per user True

修改该参数

chdev -l sys0 -a maxuproc=16384

修改后alert日志中不再报该错误