LinuxϺËÐIJÎÊýµ÷Õû
kernel.shmmax
shmmaxÊǺËÐIJÎÊýÖÐ×îÖØÒªµÄ²ÎÊýÖ®Ò»£¬ÓÃÓÚ¶¨Òåµ¥¸ö¹²ÏíÄÚ´æ¶ÎµÄ×î´óÖµ£¬shmmaxÉèÖÃÓ¦×ã¹»´ó£¬ÄÜÔÚÒ»¸ö¹²ÏíÄÚ´æ¶ÎÏÂÈÝÄÉÏÂÕû¸öµÄSGA£¬ÉèÖõĹýµÍ¿ÉÄܻᵼÖÂÐèÒª´´½¨¶à¸ö¹²ÏíÄÚ´æ¶Î£¬¿ÉÄܵ¼ÖÂϵͳÐÔÄܵÄϽµ ¡£
Oralce½¨ÒéÒ»¸ö´óµÄ¹²ÏíÄÚ´æ¶ÎÄÜÈÝÄÉÕû¸öSGA£¬ÕâÑùÔÚÈκÎʱºò¶¼²»»áÓÐÐÔÄÜϽµµÄÒþ»¼¡£
Oracle°²×°Îĵµ½¨Ò飬32λLinuxÉèÖÃshmmax Ϊ32λ×î´óÏÞÖÆÖµ(settingshmmax to the 32-bit number limit)£¬¼´4G£¬ËùÒÔ1-4G µÄÎïÀíÄڴ棬¿ÉÒÔÖ±½ÓÉèÖÃshmmax Ϊ×î´óÎïÀíÄÚ´æ¼´¿É£¬SGA ¿Ï¶¨ÔÚÒ»¸ö¹²ÏíÄÚ´æ¶ÎÖУ¬32λLinux ÎïÀíÄÚ´æ´óÓÚ4G µÄÉèÖÃΪ4G ¼´¿É
ÉèÖÃshmmax>=SGA(32λϵͳÊÇ·ñÖ§³Öµ½1.7G ÒÔÉÏSGA ÐèҪעÒâ) ¡£Èç¹ûÊÇ64λLinux ϵͳ£¬shmmax ÉèÖÃΪ´óÓÚSGA_MAX_SIZE¼´¿É¡£
Ipcs -sa ¿ÉÒÔ¿´µ½¹²ÏíÄÚ´æ¶Î¸öÊý
kernel.shmall
kernel.shmall ²ÎÊýÊÇ¿ØÖƹ²ÏíÄÚ´æÒ³Êý ¡£Linux¹²ÏíÄÚ´æÒ³´óСΪ4KB£¬ ¹²ÏíÄÚ´æ¶ÎµÄ´óС¶¼Êǹ²ÏíÄÚ´æÒ³´óСµÄÕûÊý±¶¡£Ò»¸ö¹²ÏíÄÚ´æ¶ÎµÄ×î´ó´óСÊÇ16G£¬ÐèÒª¹²ÏíÄÚ´æÒ³ÊýÊÇ16GB/4KB=16777216KB/4KB=4194304(Ò³)£¬¼´64λϵͳ16GB ÎïÀíÄڴ棬ÉèÖÃkernel.shmall=4194304²Å·ûºÏÒªÇó(¼¸ºõÊÇÔÀ´ÉèÖÃ2097152µÄÁ½±¶)¡£¿ÉÒÔ½«shmmax²ÎÊýµ÷Õûµ½16G £¬Í¬Ê±¿ÉÒÔÐÞ¸ÄSGA_MAX_SIZEºÍSGA_TARGETΪ12G£¨ÉèÖõÄSGA×î´ó´óСҲ¿ÉÊÇ2G~14GµÈ£¬»¹ÒªÐµ÷PGA²ÎÊý¼°OS µÈÆäËûÄÚ´æÊ¹Ó㬲»ÄÜÉèÖÃÌ«Âú£¬Èç16G£©
kernel.shmmni
shmmni Äں˲ÎÊýÊǹ²ÏíÄÚ´æ¶ÎµÄ×î´óÊýÁ¿£¨×¢Òâ¸Ã²ÎÊý²»ÊÇshmmin£¬ÊÇshmmni£¬shmmin ±íʾÄÚ´æ¶Î×îС´óС £© ¡£
shmmniȱʡֵ4096 ×ã¹»¡£
shmmax(bytes) = shmmni(page size, default 4k) * shmall (pageµÄ¸öÊý£©
×÷Õߣºduqiangatom