執行個體:
kernel.core_uses_pid = 1
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
ore_uses_pid可以控制產生的core檔案的檔案名稱中是否添加pid作為擴充,如果添加則檔案內容為1,否則為0
伺服器記憶體為4G的情況下
修改/etc/sysctl.conf檔案 (ROOT賬戶)
kernel.shmmax = 2147483648
//公式:2G*1024*1024*1024=2147483648(位元組)
//表示最大共用記憶體,如果小的話可以按實際情況而定,一般為實體記憶體的一半,大一點也可以(單位:位元組)
kernel.shmmni=4096
//shmmni 核心參數是共用記憶體段的最大數量(注意這個參數不是 shmmin,是
shmmni, shmmin 表示記憶體段最小大小 )。shmmni 預設值 4096 ,一般肯定是夠用了。
kernel.shmall=1048576
//kernel.shmall 參數是控制共用記憶體頁數 。Linux 共用記憶體頁大小為4KB, 共用記憶體段的大小都是共用記憶體頁大小的整數倍。公式:4G*1024*1024/4K = 1048576(頁) 查看記憶體頁大小方法#getconf PAGESIZE
//kernel.shmall:表示可用共用記憶體的總量,單位是頁,在32位系統上一頁等於4kB,也就是4096位元組。
kernel.sem=250 32000 100 128
//4個參數依次是SEMMSL:每個使用者擁有訊號量最大數,SEMMNS:系統訊號量最大數,SEMOPM:每次semopm系統叫用作業數,SEMMNI:系統辛苦量集數最大數。這4個參數為固定內容大小
fs.file-max=65536
//在linux下面如果報告:too many file opened,就需要增加系統允許開啟的檔案數。file-max固定大小65536
net.ipv4.ip_local_port_range=1024 65000
//ip_local_port_range表示連接埠的範圍,為指定的內容
kernel.sem:表示設定的訊號量,這4個參數內容大小固定。
net.core.rmem_default:表示接收通訊端緩衝區大小的預設值(以位元組為單位)。
net.core.rmem_max :表示接收通訊端緩衝區大小的最大值(以位元組為單位)
net.core.wmem_default:表示發送通訊端緩衝區大小的預設值(以位元組為單位)。
net.core.wmem_max:表示發送通訊端緩衝區大小的最大值(以位元組為單位)
以上步驟做完執行 /sbin/sysctl -p 使核心生效
驗證參數(root賬戶執行):
#/sbin/sysctl -a | grep shm
#/sbin/sysctl -a | grep sem
#/sbin/sysctl -a | grep file-max
#/sbin/sysctl -a | grep ip_local_port_range