Modifying kernel parameters (Linux)

Modifying kernel parameters (Linux)

Before installing DB2 UDB, you may want to update your Linux kernel
parameters. DB2 UDB automatically raises the IPC limits where necessary. You
might still want to raise these limits further depending on your particular
needs.

Prerequisites

You must have root authority to modify kernel parameters.

Procedure

To update kernel parameters:

RedHat and SuSE
Systems using a 2.4.x series kernel have a default value for the message
queue parameter (msgmni), which allows only a few simultaneous connections to
DB2. Semaphore array parameters also have to be changed for DB2 to run
successfully. To check shared memory segment, semaphore array, and message queue
limits, issue the ipcs -l command.

The following is the output from the ipcs -l command.

   # ipcs -l

   ------ Shared Memory Limits --------   max number of segments = 4096	             // SHMMNI	   max seg size (kbytes) = 32768   max total shared memory (kbytes) = 8388608   min seg size (bytes) = 1

   ------ Semaphore Limits --------   max number of arrays = 1024		             // SEMMNI   max semaphores per array = 2502    max semaphores system wide = 256000   max ops per semop call = 32   semaphore max value = 32767

   ------ Messages: Limits --------   max queues system wide = 1024	            // MSGMNI   max size of message (bytes) = 65536   default max size of queue (bytes) = 16384	// MSGMAX 

Modify the kernel parameters by adding the following entries to the default
system control configuration file, /etc/sysctl.conf:

2      kernel.msgmni = 10242      kernel.sem = 250 256000  32 1024 

where

   max semaphores system wide =    max number of arrays x max semaphores/array 

Run sysctl with -p parameter to load in sysctl settings
from the default file /etc/sysctl.conf.

   sysctl -p 

The entries from the sysctl.conf file are read
during startup by the network initialization script.

On some distributions you may be required to add sysctl -p
in one of the system initialization files (for example, rc.local) so
that kernel parameters are set after each reboot.

~ by Ramchandra on April 15, 2008.

Leave a Reply