sysctl -a | grep -E "shmall|shmmax"
ipcs -lm



kernel.shmall = 2097152
kernel.shmmax = 33554432


Ajouter le ficiher memory.sh

#!/bin/bash
# simple shmsetup script
page_size=`getconf PAGE_SIZE`
phys_pages=`getconf _PHYS_PAGES`
shmall=`expr $phys_pages / 2`
shmmax=`expr $shmall \* $page_size`
echo kernel.shmmax = $shmmax
echo kernel.shmall = $shmall

root@Idefix:/etc/postgresql/9.1# ./memory.sh
kernel.shmmax = 4186128384
kernel.shmall = 1022004
root@Idefix:/etc/postgresql/9.1#




Modification des valeurs et vérification

root@Idefix:/etc/postgresql/9.1# ./memory.sh
kernel.shmmax = 4186128384
kernel.shmall = 1022004
root@Idefix:/etc/postgresql/9.1#
root@Idefix:/etc/postgresql/9.1#
root@Idefix:/etc/postgresql/9.1#
root@Idefix:/etc/postgresql/9.1#
root@Idefix:/etc/postgresql/9.1#
root@Idefix:/etc/postgresql/9.1#
root@Idefix:/etc/postgresql/9.1# pico /etc/sysctl.conf

++ ajouter les deux valeurs données par le memory.sh
++ sauvegarder le fichier
++ rebooter le serveur


==>VERIFICATION
root@Idefix:/etc/postgresql/9.1# sysctl -a | grep -E "shmall|shmmax"
error: "Success" reading key "dev.parport.parport0.autoprobe"
error: "Success" reading key "dev.parport.parport0.autoprobe0"
error: "Success" reading key "dev.parport.parport0.autoprobe1"
error: "Success" reading key "dev.parport.parport0.autoprobe2"
error: "Success" reading key "dev.parport.parport0.autoprobe3"
kernel.shmall = 1022004
kernel.shmmax = 4186128384
error: permission denied on key 'net.ipv4.route.flush'
error: permission denied on key 'net.ipv6.route.flush'
error: permission denied on key 'vm.compact_memory'
root@Idefix:/etc/postgresql/9.1#

==>Maintenant modification des fichiers de postgres
#checkpoint_segments=3 / 10
#checkpoint_completion_target=0.5 / 0.9
#effective_cache_size=128MB / 2048 MB (2/3 de la RAM)
#random_page_cost=4.0 / 3.0


#shared_buffers=24MB / 512MB (1/4 RAM)
#work_mem=1MB / 5MB
#effective_cache_size=128MB / 2048 MB (2/3 de la RAM)