Preferiti Creare un documento PDF E-mail Stampare

Modificare buffer di memoria condivisa

Autore:
Claudio Dosio
Aggiunto il:
Domenica 16 Maggio 2010
Ultima modifica:
mai
Clics:
1155
Votazione:
 
Vota per:
Buono - Pessimo
Preferito:
1 Preferiti

Risposta

Nel caso il vostro DBMS vada in esaurimento del numero di connessioni, dando un messaggio del tipo: Unable to connect to PostgreSQL server: FATAL: connection limit exceeded for non-superusers

dovrete modificare il numero massimo di connessioni dentro al file postgresql.conf, cambiando il valore del parametro max_connections.

Di conseguenza potrebbe essere necessario modificare il parametro shared_buffers ed impostarlo ad un valore pari a

max_connetions*16KB + superuser_reserved_connetions * 16KB

Sul mio sistema questo cambiamento ha richiesto di modificare in cascata dei parametri di sistema andando a cambiare la memoria massima condivisa. Innanzitutto dovete verificare il nuovo valore, ad es. 512MB

echo 536870912 > /proc/sys/kernel/shmmax

se riavviando Postgres tutto funziona a dovere potrete consolidare il cambiamento inserendo all'interno del file /etc/sysctl.conf la seguente riga:

kernel.shmmax = 536870912

e quindi lanciare il comando sysctl -p

Infine, un altro parametro che ho dovuto modificare riguarda il numero di semafori da mettere a disposizione del sistema. Anche questa volta ho prima effettuato una prova a riga di comando con:

echo "250 32000 100 150" > /proc/sys/kernel/sem

infine confermando il tutto inserendo la riga nel file /etc/sysctl.conf

kernel.sem = 250 32000 100 150

e lanciando il comando sysctl -p

 

Categoria

Tags di questa voce

Pubblicità