echo 65536 > /proc/sys/kernel/pid_max # temporary echo "kernel.pid_max=65536" >> /etc/sysctl.conf Check for zombie processes:
ulimit -u Linux (check & set) :
SHOW PARAMETER processes SHOW PARAMETER sessions Increase (e.g., to 2000):
oracle soft nproc 16384 oracle hard nproc 32768 oracle soft nofile 65536 oracle hard nofile 65536 in /etc/system :
echo "kernel.sem = 250 32000 100 256" >> /etc/sysctl.conf sysctl -p in /etc/system :
# Current limits cat /proc/sys/kernel/shmmax cat /proc/sys/kernel/shmall Set for large SGA:
ipcs -s | grep oracle | awk 'print $2' | xargs -n1 ipcrm -s Linux :
SELECT value/1024/1024 MB FROM v$parameter WHERE name='sga_max_size'; Check free memory :
set semsys:seminfo_semmns=4096 set semsys:seminfo_semmni=1024 set semsys:seminfo_semmsl=512 (if instance is down):
vi /etc/security/limits.conf Add:
SEMMSL = 250 (or max processes per instance) SEMMNS = 32000 (or higher) SEMOPM = 100 SEMMNI = 256 (or 1024 for large systems) Set persistently:
ls -l $ORACLE_HOME/bin/oracle # Should have setuid (rwsr-s--x) chmod 6751 $ORACLE_HOME/bin/oracle Increase (Linux):