https://www.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.qb.server.doc/doc/c0057140.htmlhtml
You must have root authority to modify kernel parameters.linux
# ipcs -l ------ Shared Memory Limits -------- max number of segments = 4096 // SHMMNI max seg size (kbytes) = 32768 // SHMMAX max total shared memory (kbytes) = 8388608 // SHMALL min seg size (bytes) = 1 ------ Semaphore Limits -------- max number of arrays = 1024 // SEMMNI max semaphores per array = 250 // SEMMSL max semaphores system wide = 256000 // SEMMNS max ops per semop call = 32 // SEMOPM semaphore max value = 32767 ------ Messages: Limits -------- max queues system wide = 1024 // MSGMNI max size of message (bytes) = 65536 // MSGMAX default max size of queue (bytes) = 65536 // MSGMNB
#Example for a computer with 16GB of RAM: kernel.shmmni=4096 kernel.shmmax=17179869184 kernel.shmall=8388608 #kernel.sem=<SEMMSL> <SEMMNS> <SEMOPM> <SEMMNI> kernel.sem=250 256000 32 4096 kernel.msgmni=16384 kernel.msgmax=65536 kernel.msgmnb=65536
這裏對每一個參數值作個簡要的解釋和說明。 (1)shmmax:參數定義了共享內存段的最大值(以字節爲單位)。缺省爲32M,對於db2oracle來講,該缺省值過低了,設置爲RAM內存大小單位byte 即17179869184/1024/1024/1024=16G, (2)shmmni:參數用於設置系統範圍內共享內存段的最大值。該參數的默認值是 4096btyes 。一般不須要更改。 (3)shmall:該參數表示系統一次能夠使用的共享內存總量(以頁爲單位)。缺省值就是2097152,一般不須要修改,設置爲RAM的90%。 (4)sem:該參數表示設置的信號量。這4個參數內容大小固定。 (5)file-max:該參數表示文件句柄的最大數量。文件句柄設置表示在linux系統中能夠打開的文件數量。
參考配置:
oracle
vi /etc/sysctl.conf #kernel.sem=<SEMMSL> <SEMMNS> <SEMMNS> <SEMOPM> <SEMMNI> kernel.sem=250 256000 32 1024 kernel.shmmax=1073741824 #以64位系統爲例的shmmax設置值 kernel.shmall=3774873 #以16GB內存爲例的90%的shmal設置值 kernel.msgmni=1024kernel.msgmax=65535 kernel.msgmnb=65535