PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 01/03/2018 15:15:59

icadedt
Membre

puis-je effacer les fichiers pg_xlog

Bonjour,

est-ce que je peux effacer les fichiers dans le dossier pg_xlog ?
Si oui comment le faire proprement ?
Comment ne conserver que les dernieres ?
est-il possible de paramétrer afin que le dossier ne dépasse pas une certaine
volumétrie ?

Merci d 'avance

Hors ligne

#2 01/03/2018 16:02:38

gleu
Administrateur

Re : puis-je effacer les fichiers pg_xlog

Il ne faut surtout pas effacer les fichiers du répertoire pg_xlog. Ils sont renommés pour être réutilisés ou supprimés le cas échéant par le serveur PostgreSQL. Il ne conserve que ceux dont il a besoin, et suivant la configuration. Pour répondre aux autres questions, il serait utile de connaître votre version de PostgreSQL.

Hors ligne

#3 04/07/2018 16:40:29

icadedt
Membre

Re : puis-je effacer les fichiers pg_xlog

j'ai la 9.2 sur centos 6

Hors ligne

#4 04/07/2018 21:36:22

rjuju
Administrateur

Re : puis-je effacer les fichiers pg_xlog

Ok.  Et quel est exactement le problème ? Vous trouvez que l'espace disque utilisé par pg_xlog en général est trop important, ou que la volumétrie a subitement commencé à croître sans s'arrêter ?

En ligne

#5 05/07/2018 10:53:08

icadedt
Membre

Re : puis-je effacer les fichiers pg_xlog

espace disque saturée de pg_xlog

Hors ligne

#6 05/07/2018 17:18:10

gleu
Administrateur

Re : puis-je effacer les fichiers pg_xlog

Soit la partition est trop petite et il faut l'augmenter. Soit PostgreSQL ne recycle pas ses journaux, et ça se voit dans les traces grâce aux messages d'erreur.

Hors ligne

#7 06/07/2018 08:51:09

duple
Membre

Re : puis-je effacer les fichiers pg_xlog

Peut être que le mode archivage est activé, alors qu'il n'y a pas paramètrage de copie des wal vers une autre destination. Du coup les fichier dans pg_xlog vont s'entasser.

Hors ligne

#8 06/07/2018 20:28:34

icadedt
Membre

Re : puis-je effacer les fichiers pg_xlog

comment voir que le mode archivage est activé ?

Hors ligne

#9 07/07/2018 08:51:08

rjuju
Administrateur

Re : puis-je effacer les fichiers pg_xlog

Le paramètre archive_mode est à on, et le paramètre archive_command pour voir la commande qui effectuera l'archivage.  Comme le disait Guillaume, si cela échoue, cela se verra dans les logs.  Pouvez-vous regarder s'il y a des messages d'erreur dans les logs ?

En ligne

#10 09/07/2018 07:58:31

icadedt
Membre

Re : puis-je effacer les fichiers pg_xlog

rjuju a écrit :

Le paramètre archive_mode est à on, et le paramètre archive_command pour voir la commande qui effectuera l'archivage.  Comme le disait Guillaume, si cela échoue, cela se verra dans les logs.  Pouvez-vous regarder s'il y a des messages d'erreur dans les logs ?

log récurrent mais ca n'a pas l'air d'être lié à un probleme d'archivage :


ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 13
INSTRUCTION :  DELETE FROM d8gis_flood
    WHERE expiration < '1530920071'
ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 67
INSTRUCTION :  SELECT COUNT(*) AS expression
    FROM
    (SELECT 1 AS expression
    FROM
    d8gis_flood f
    WHERE (event = 'user.failed_login_ip') AND (identifier = '127.0.0.1') AND (timestamp > '1530917399')) subquery
ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 67
INSTRUCTION :  SELECT COUNT(*) AS expression
    FROM
    (SELECT 1 AS expression
    FROM
    d8gis_flood f
    WHERE (event = 'user.failed_login_user') AND (identifier = '1-127.0.0.1') AND (timestamp > '1530899399')) subquery
ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 13
INSTRUCTION :  DELETE FROM d8gis_flood
    WHERE (event = 'user.failed_login_user') AND (identifier = '1-127.0.0.1')
ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 13
INSTRUCTION :  DELETE FROM d8gis_flood
    WHERE expiration < '1530953312'
ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 13
INSTRUCTION :  DELETE FROM d8gis_flood
    WHERE expiration < '1530957732'
ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 13
INSTRUCTION :  DELETE FROM d8gis_flood
    WHERE expiration < '1530973320'
ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 13
INSTRUCTION :  DELETE FROM d8gis_flood
    WHERE expiration < '1530998884'
ERREUR:  la relation « d8gis_flood » n'existe pas au caractère 67
INSTRUCTION :  SELECT COUNT(*) AS expression
    FROM
    (SELECT 1 AS expression
    FROM
    d8gis_flood f
    WHERE (event = 'user.failed_login_ip') AND (identifier = '127.0.0.1') AND (timestamp > '1530997078')) subquery
ERREUR:  la relation « public.d8gis_flood » n'existe pas au caractère 409
INSTRUCTION :  SELECT pg_attribute.attname AS column_name, format_type(pg_attribute.atttypid, pg_attribute.atttypmod) AS data_type, pg_get_expr(pg_attrdef.adbin, pg_attribute.attrelid) AS column_default
    FROM pg_attribute
    LEFT JOIN pg_attrdef ON pg_attrdef.adrelid = pg_attribute.attrelid AND pg_attrdef.adnum = pg_attribute.attnum
    WHERE pg_attribute.attnum > 0
    AND NOT pg_attribute.attisdropped
    AND pg_attribute.attrelid = 'public.d8gis_flood'::regclass
    AND (format_type(pg_attribute.atttypid, pg_attribute.atttypmod) = 'bytea'
    OR pg_attrdef.adsrc::text LIKE 'nextval%')

Hors ligne

#11 09/07/2018 08:38:34

ruizsebastien
Membre

Re : puis-je effacer les fichiers pg_xlog

pouvez-vous nous donner le contenu de votre "archive_command" et regarder si dans le répertoire indiqué par archive_command il y a des fichiers produits par l'archivage.


Cordialement,

Sébastien.

Hors ligne

#12 09/07/2018 21:50:34

icadedt
Membre

Re : puis-je effacer les fichiers pg_xlog

#archive_command = ''

Hors ligne

#13 09/07/2018 23:48:20

rjuju
Administrateur

Re : puis-je effacer les fichiers pg_xlog

Pouvez-vous vérifier avec la requête suivant :

SELECT name, current_setting(name), source, sourcefile, sourceline
FROM pg_settings 
WHERE source <> 'default' AND name NOT IN ('config_file', 'data_directory', 'hba_file', 'ident_file')
ORDER BY name;

En ligne

#14 10/07/2018 08:29:55

ruizsebastien
Membre

Re : puis-je effacer les fichiers pg_xlog

bonjour,

si vous êtes en mode archivage à on et que archive_command est vide, postgres ne peut pas archiver les WAL. C'est donc normal que les WAL s'empilent dans pg_xlog.
Vous devez donc paramétrer archive_command pour permettre l'archivage. Dès que ce sera fait les WAL seront recyclés.
https://docs.postgresql.fr/9.2/continuo … iving.html


Cordialement,

Sébastien.

Hors ligne

#15 10/07/2018 13:58:50

icadedt
Membre

Re : puis-je effacer les fichiers pg_xlog

rjuju a écrit :

Pouvez-vous vérifier avec la requête suivant :

SELECT name, current_setting(name), source, sourcefile, sourceline
FROM pg_settings 
WHERE source <> 'default' AND name NOT IN ('config_file', 'data_directory', 'hba_file', 'ident_file')
ORDER BY name;

ca donne :


"application_name";"pgAdmin III - ??diteur de requ??tes";"client";"";
"archive_mode";"off";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";191
"bytea_output";"escape";"session";"";
"client_encoding";"UNICODE";"session";"";
"client_min_messages";"notice";"session";"";
"DateStyle";"ISO, DMY";"session";"";
"default_text_search_config";"pg_catalog.french";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";520
"lc_collate";"fr_FR.UTF-8";"override";"";
"lc_ctype";"fr_FR.UTF-8";"override";"";
"lc_messages";"fr_FR.UTF-8";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";513
"lc_monetary";"fr_FR.UTF-8";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";515
"lc_numeric";"fr_FR.UTF-8";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";516
"lc_time";"fr_FR.UTF-8";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";517
"log_destination";"stderr";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";294
"log_directory";"pg_log";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";306
"log_filename";"postgresql-%a.log";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";308
"logging_collector";"on";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";300
"log_rotation_age";"1d";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";320
"log_rotation_size";"0";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";322
"log_timezone";"Europe/Paris";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";418
"log_truncate_on_rotation";"on";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";312
"max_connections";"100";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";64
"max_stack_depth";"2MB";"environment variable";"";
"port";"5432";"command line";"";
"server_encoding";"UTF8";"override";"";
"shared_buffers";"32MB";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";113
"TimeZone";"Europe/Paris";"configuration file";"/var/lib/pgsql/9.2/data/postgresql.conf";500
"transaction_deferrable";"off";"override";"";
"transaction_isolation";"read committed";"override";"";
"transaction_read_only";"off";"override";"";
"wal_buffers";"1MB";"override";"";

Hors ligne

#16 10/07/2018 14:18:27

rjuju
Administrateur

Re : puis-je effacer les fichiers pg_xlog

Mis à part certains paramètre qu'il faudrait certainement corriger d'un point de vue des performances, rien n'explique une utilisation excessive du répertoire pg_xlog à priori.  Combien de fichiers sont présents dans ce répertoire, quelle est la répartition du nombre de fichier par jour?  Avez-vous un historique de la taille de ce répertoire, ou du nombre de journaux de transaction présents ?

En ligne

#17 10/07/2018 14:23:41

gleu
Administrateur

Re : puis-je effacer les fichiers pg_xlog

Donc l'archivage n'est pas activé, ce n'est pas lui, le coupable. Peut-être avez-vous configuré le paramètre wal_keep_segments ?

Hors ligne

#18 10/07/2018 14:38:24

rjuju
Administrateur

Re : puis-je effacer les fichiers pg_xlog

J'y pensais aussi mais il n'apparaît pas dans la liste des options modifiées.

En ligne

#19 11/07/2018 17:12:13

icadedt
Membre

Re : puis-je effacer les fichiers pg_xlog

ou tout simplement que mon disque dur n'est pas assez gros pour mes besoins

Hors ligne

#20 11/07/2018 17:17:10

gleu
Administrateur

Re : puis-je effacer les fichiers pg_xlog

C'est aussi possible, oui.

Hors ligne

#21 11/07/2018 17:24:13

rjuju
Administrateur

Re : puis-je effacer les fichiers pg_xlog

D'où ma première question pour savoir quel est exactement le problème.

En ligne

Pied de page des forums