Re: Directory data/pg_xlog enorme!

From: Giuseppe Broccolo <g(dot)broccolo(dot)7(at)gmail(dot)com>
To: Francesco Andrisani <francesco(dot)andrisani(at)acotel(dot)com>
Cc: pgsql-it-generale(at)postgresql(dot)org
Subject: Re: Directory data/pg_xlog enorme!
Date: 2017-12-11 11:04:27
Message-ID: CAFtuf8AkaqYA8mqVYhHceNak160RPKKooJ5oTaLJ+=mkzh2gwg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-it-generale

Salve Francesco,

Il giorno 11 dicembre 2017 11:17, Francesco Andrisani <
francesco(dot)andrisani(at)acotel(dot)com> ha scritto:

> Buongiorno,
> sto notando che la directory del mio postgresql 9.4 BDR ha raggiunto la
> dimensione di 80 Gb. Che posso fare?
>

Questo sta accadendo su tutti i nodi del cluster BDR? In oggetto alla mail
hai precisato che si tratta della pg_xlog/, la subdirectory dove vengono
generati i WAL file di PostgreSQL.

> Ho letto che non posso cancellare questi files? Corretto? Ma quindi come
> posso risolvere per ricavare un po di spazio sul mio server?
>

I WAL sono fondamentali per la persistenza del dato in PostgreSQL, e
vitali in caso di crash recovery del database. Tali file vengono
opportunamente ruotati da PostgreSQL stesso, sulla base dei checkpoint
eseguiti. E solo PostgreSQL, a regime, libera spazio una volta che i WAL
non sono più utili, per far spazio a quelli nuovamente generati.

Per ricavare spazio devi capire cosa sta bloccando la rimozione/rotazione
dei file. Questo può accadere per vari motivi: nei casi di replica, in
presenza di replication slot, potrebbe trattarsi di WAL mantenuti in pancia
da replication slot non più attivi (cosa che si può venire a creare in caso
di fallimenti durante il setup della replica).

Puoi controllare lo stato dei replication slot in uso con la seguente query:

SELECT * FROM pg_replication_slots;

i replication slot non più attivi (perché non usati) possono essere rimossi
tramite il comando SQL:

SELECT
pg_drop_replication_slot('<repl_slot_name>');

Ti consiglio di leggere maggiori info su WAL e replication slot in
dettaglio nella documentazione di PostgreSQL (generalmente molto ben
fatta), così che puoi capire meglio il problema con cui ti stai
confrontando.

Un saluto,
Giuseppe.

In response to

Responses

Browse pgsql-it-generale by date

  From Date Subject
Next Message Francesco Andrisani 2017-12-11 11:08:03 Re: Directory data/pg_xlog enorme!
Previous Message Francesco Andrisani 2017-12-11 10:44:51 Re: Postgres 9.4 BDR - Replicazione non funziona