08.共享內存

  1. 作用
    1) 用於通信。使用共享內存通信比其他通信方式效率高
    2) 保存日誌等信息。共享內存在進程退出後,可以記錄一些臨終遺言信息

  2. 參數設置
    kernel.shmmax 單個共享內存段的最大值,一般設置爲物理內存的一半(內存小於4G,可設置爲與物理內存一樣大;大於4G,可設置爲物理內存的90%),單位Byte
    kernel.shmall 共享內存頁數
    kernel.shmmni 共享內存段的最大數量,默認4096 Bytes

64G 內存
kernel.shmmax = 34359738368 (34359738368 / 1024 / 1024 = 32768MB = 32GB)
kernel.shmall = 8388608 (34359738368 / 4096 = 8388608)
kernel.shmmni = 4096

Oracle:
shmmax>=SGA(32位系統 1.7G 以上SGA 需要注意) 。64位系統,shmmax 設置爲大於SGA_MAX_SIZE即可

shmmax(bytes) = shmmni(page size, default 4k) * shmall (page的個數)

  1. 修改系統參數
    1) 實時生效
    sysctl -w kernel.shmall=8388608
    sysctl -w kernel.shmmax=34359738368

2) 永久生效
vi /etc/sysctl.conf
kernel.shmall = 8388608
kernel.shmmax = 34359738368

chkconfig -a boot.sysctl

立即生效

sysctl -p

  1. 調整/dev/shm的大小 
    1) 查看大小 
    df -h /dev/shm
     
    2) 修改大小 
    vi /etc/fstab 
    tmpfs /dev/shm tmpfs defaults,size=4096M 0 0
     
    3) 重新掛載 
    umount /dev/shm 
    mount /dev/shm
     
    4) 查看修改後的大小 
    df -h /dev/shm
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章