Forum Programmation.SQL Update the postgresql sous gentoo

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
1
9
juil.
2014

Bonjour,

Suite a un update de postgresql sous gentoo, je me retrouve avec un:
FATAL: database files are incompatible with server
DETAIL: The database cluster was initialized with PG_CONTROL_VERSION -1304664743, but the server was compiled with PG_CONTROL_VERSION 937.
HINT: It looks like you need to initdb.
initdb -> pour l'init a vide.
pg_upgrade -d old_data -D data -> il me manque le dossier bin/ que j'ai pas vu, je pense pas que ce soit celui de la distro.
Donc comment upgrade proprement?

Cordialement,

  • # faire un dump avant

    Posté par  . Évalué à 3.

    PostgreSQL ne maintient pas la compatibilité du format sur disque de la base de données entre les version.
    Plus exactement, PG est numéroté de façon classique en x.y.z, si x ou y changent il faut re-créer le cluster de base de données, par contre, si seul z change alors la compatibilité est maintenue.

    Donc pour passer à une nouvelle version de PG, il faut d'abord faire un dump de toutes les DB (avec pg_dumpall) pour pouvoir ensuite le restaurer (avec psql) dans un cluster fraichement créé avec la nouvelle version.

    Depuis la version 9.0, une commande additionnelle pg_upgrade permet de convertir un cluster vers une nouvelle version de PG, cf
    http://www.postgresql.org/docs/9.0/static/pgupgrade.html
    mais cette commande nécessite d'avoir à la fois les binaires de l'ancienne et de la nouvelle version pour pouvoir travailler.

    Donc, dans tous les cas tu as besoin de la version précédente avec laquelle ton cluster a été créé pour pouvoir récupérer les données.

    Ou bien tu récupère le backup que tu avais fait (n'est-ce pas?) juste avant de lancer cette mise à jour importante.

    • [^] # Re: faire un dump avant

      Posté par  (site web personnel) . Évalué à 1.

      En faite j'ai update de la version 9.3.3 a la 9.3.3… mais un corruption du FS est arrive (c'est ca quand le root est sur un clef usb sur du matos exotique comme un geode-lx800).
      C'est toujours bon a savoir…
      Mais la j'ai rm *, et repartie de 0 vu que c'est un serveur de teste… j'essaye d'avoir des performance de fou sur le plus petit matériel possible, …

      Mon projet libre: http://ultracopier-fr.first-world.info/, mon jeu libre: http://catchchallenger.first-world.info/

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.