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 07/06/2011 21:38:22

mich30
Membre

repertoire data/base/27572 plein !???

Bonsoir,

Ma base de données postgres est de  150 giga ,.

le data se trouve sur un  NAS qui fait 950 giga .

Mes dumps font 30 giga .

Ce soir le nas etait plein  950 giga , donc la base postgres
ne repondait plus espace libre a O%

Donc j'ai supprimé mes dumps ce qui m'a fait 20 giga de libre.
J'ai pu redemarré postgres ( en redemarrant la machine linux)

j'ai verifié la taille de mes tables , le tout fait 150 giga , donc je ne comprenais pas.

J'ai regardé dans le repertoire base  , il existe un repertoire qui s'appelle 27522 ( qui fait 920 giga !!!)

dans ce repertoire il y avait plein de fichier qui font 1giga chacun .

j'ai regardé dans les logs il y a une requete de distance qui  s'est mal passé la nuit .

Pourtant mon autovaccum est a ON .

pourquoi ces fichiers dans base sont crées par tranche de 1 giga .

y a t'il une valeur a diminuer dans postgres.conf ????

Par quelle etape dois je commencer pour trouver ce probleme

Grand merci

Hors ligne

#2 07/06/2011 21:51:03

gleu
Administrateur

Re : repertoire data/base/27572 plein !???

pourquoi ces fichiers dans base sont crées par tranche de 1 giga

Par soucis de portabilité, certains systèmes de fichiers ayant des tailles maximums de fichiers qu'on peut maintenant considéré très basses. Sous SCO par exemple, il était impossible de créer un fichier de plus de 2 Go. Donc, pour être sûr que la taille maximale d'un fichier ne pose pas problème, les développeurs de PostgreSQL ont décidé que tous les fichiers relatifs aux tables et index auraient une taille max de 1 Go.

y a t'il une valeur a diminuer dans postgres.conf ????

Une valeur à diminuer pour quoi ? si un utilisateur a fait suffisamment d'activé pour enregistrement 920 Go de données, que les fichiers soient découpés en tranche de 1 Go ou en tranche de 1 octet ne change strictement rien au problème.

Par quelle etape dois je commencer pour trouver ce probleme

Trouver le gars qui a créé la base d'OID 27522 et lui demander pourquoi il a inséré 920 Go de données.


Guillaume.

Hors ligne

#3 08/06/2011 10:14:34

mich30
Membre

Re : repertoire data/base/27572 plein !???

je ne comprends pas je fais
sELECT  schemaname as schema ,tablename as table,
     pg_total_relation_size(schemaname||'.'||tablename) as size,
     tableowner from
       pg_tables order by size desc;

et la table la plus importante est de 7 giga

je fais la somme en taille de toutes les tables je trouve 106 giga

quand je fais SELECT pg_database_size('base'); 950 giga

donc y a pas une table temporaire , une table systeme qui est elevé en taille  ???

quand une requete se passe mal avec un create table , les données sont mis surement
au prealable dans une zone tampon et on me dit que si ca se passe mal
postgres supprime automatiquement cette memoire cache

merci

Hors ligne

#4 08/06/2011 14:39:05

mich30
Membre

Re : repertoire data/base/27572 plein !???

mes tables crées par les utilisateurs n'ont pas de probleme 150 giga
si je fais  SELECT pg_database_size('base'); j'ai 950 giga

a priori j'ai regardé avec oi2dname au niveau filenode il me renvoie comme table pg_toast_2604_index
c'est les pg_toast qui me prenne de la place comment on fait pour liberer de l'espace ?

Hors ligne

#5 08/06/2011 15:38:12

mich30
Membre

Re : repertoire data/base/27572 plein !???

parfois avec oi2dname il me renvoie aucun nom de table
comme supprimer les filenode obsoletes (orphelin)
merci

Hors ligne

#6 08/06/2011 23:26:31

gleu
Administrateur

Re : repertoire data/base/27572 plein !???

Comme dit sur un autre thread que vous avez ouvert, on ne supprime aucun fichier manuellement.


Guillaume.

Hors ligne

#7 09/06/2011 09:33:35

mich30
Membre

Re : repertoire data/base/27572 plein !???

merci !

Hors ligne

Pied de page des forums