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

#1 09/05/2011 12:03:25

GloReX
Membre

Grand nettoyage

Bonjour,

J'ai exécuté un DROP database sur une instance afin de supprimer les vielles bases devenues inutiles. J'ai constaté que les fichiers étaient encore présent sur le serveur et je souhaitera savoir comment je pourrais supprimer tout les fichiers ayant un rapport avec ces vielles bases.

Merci

Hors ligne

#2 09/05/2011 12:05:26

gleu
Administrateur

Re : Grand nettoyage

Et le DROP DATABASE a réussi ? parce que, à priori, tous les fichiers de cette base sont immédiatement supprimés. Sinon, quelle version de PostgreSQL ?


Guillaume.

Hors ligne

#3 09/05/2011 13:54:38

GloReX
Membre

Re : Grand nettoyage

Oui, ça a fonctionné sans problème. Il s'agit de PostgreSQL 9.0.1, compiled by Visual C++ build 1500, 64-bit

Pour plus de précision, il me reste des fichiers dans les répertoires portant les OIDs des anciennes db.

Hors ligne

#4 09/05/2011 14:12:33

gleu
Administrateur

Re : Grand nettoyage

Cela devrait disparaître rapidement, avec l'action du bgwriter. Je sais que cela se passe ainsi pour le déplacement d'une table dans un autre tablespace. Je suis un peu étonné que ce soit identique pour la destruction d'une base de données.


Guillaume.

Hors ligne

#5 09/05/2011 14:19:45

Marc Cousin
Membre

Re : Grand nettoyage

Ça m'étonne aussi. De mémoire, il y a un checkpoint automatiquement déclenché au drop database.


Marc.

Hors ligne

#6 09/05/2011 17:35:04

GloReX
Membre

Re : Grand nettoyage

Quand est ce que le bgwriter s'exécute-t-il, car j'ai viré ces bases la semaine dernière...

Hors ligne

#7 10/05/2011 06:36:01

Marc Cousin
Membre

Re : Grand nettoyage

Il s'exécute en permanence. Les fichiers devraient être supprimés depuis longtemps. Il devait rester des fichiers qui n'étaient pas dans le catalogue de Postgresql. Aucune idée de comment ils ont pu ne pas se retrouver supprimés. Peut-être un verrou sur fichier (un des charmes de windows…) ?

Vous pouvez toujours essayer de les supprimer (déplacez les pour le moment, on ne sait jamais). Uniquement les fichiers qui sont dans un sous répertoire de base/ et dont les numéros n'apparaissent pas dans «select oid from pg_database» bien sûr. S'ils sont nécessaires, vous aurez des messages d'erreurs de backends disant qu'ils n'arrivent pas à accéder aux fichiers, qu'il suffira de remettre en place. C'est tout de même anormal qu'ils n'aient pas été supprimés.


Marc.

Hors ligne

#8 10/05/2011 09:50:16

GloReX
Membre

Re : Grand nettoyage

Excuser mon ignorance,

Mais j'ai deux oids de trop ^_^

Trois sont clairement identifiables, et les deux dernières doivent être des base systèmes: template1 et template0. S'il s'agit bien de cela il n'y  pas de problème, juste un manque de connaissance de ma part.

Bonne journée

Hors ligne

#9 11/05/2011 07:02:36

Marc Cousin
Membre

Re : Grand nettoyage

template0 et template1 ont des oid, consultables aussi dans pg_database. Je ne comprends donc pas bien la question: est-ce que ces deux bases n'apparaissent pas dans pg_database avec leurs oid ?


Marc.

Hors ligne

#10 11/05/2011 09:29:26

GloReX
Membre

Re : Grand nettoyage

Elles apparaissent bien dans pg_database avec leurs oid.

En fait il n'y a pas de problème... on a trouvé les deux bases inconnues.

Explication:
J'ai supprimer deux anciennes bases dans l'instance et il m'en reste trois (postgres + 2 db de prob). Je ne connaissais pas les deux bases template0 et template1. Je croyais que les deux bases restantes inconnues étaient les restes des bases supprimées... Je vais RTFM

Merci

Hors ligne

#11 11/05/2011 19:12:29

Marc Cousin
Membre

Re : Grand nettoyage

ok. Tout s'explique donc smile


Marc.

Hors ligne

#12 12/05/2011 09:03:12

GloReX
Membre

Re : Grand nettoyage

Oui,

Merci a tous smile

Hors ligne

Pied de page des forums