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 03/05/2020 09:14:33

lapinux
Membre

Database postgres v9.3 ; installée v12 ; pb migration des données

Linux openSuse Tumbleweed

Bonjour,

Je souhaite récupérer des bases de données d'anciens développements logiciels.
Les bases ont été créees avec postgres v9.3.
Postgres actuellement installé sur ma machine est en version 12. Il s'est mis à jour automatiquement.
Evidemment je ne peux pas procéder à un dumpall du fait que le serveur ne veut pas démarrer au motif de base de données "périmée".
J'ai désespérement cherché un postgresql v9.3 en rpm. Les dernières versions disponibles sont 9.5 et plus.

Quelle version de postgres >= 9.5 peut me permettre de faire le job ?
Ou existe-t-il un autre moyen de récupérer ces données ?

Merci

Hors ligne

#2 03/05/2020 09:58:27

pifor
Membre

Re : Database postgres v9.3 ; installée v12 ; pb migration des données

Pour installer une ancienne (ou une nouvelle) version de Postgres sur Linux, il est toujours possible de l'installer à partir du code source: https://docs.postgresql.fr/9.3/installation.html.
Sinon il est possible d'utiliser l'exécutable pg_dump 12 pour exporter la base source en version 9.3 et l'exécutable pg_restore 12 pour importer  dans la base cible en version 12.


Exemple pour passer de 9.3 à 11: il faut bien utiliser les exécutables pg_dump et pg_restore de la version 11.


Je trouve la formulation de la documentation officielle assez ambigüe et qu'elle manque vraiment d'exemple sur ce point spécifique de changement de version:


Parce que pg_dump est utilisé pour transférer des données vers des nouvelles versions de PostgreSQL™, la sortie de pg_dump devra pouvoir se charger dans les versions du serveur PostgreSQL™ plus récentes que la version de pg_dump. pg_dump peut aussi extraire des données de serveurs PostgreSQL™ plus anciens que sa propre version. (À l'heure actuelle, les versions de serveurs supportées vont jusqu'à la 8.0.) Toutefois, pg_dump ne peut pas réaliser d'extraction de serveurs PostgreSQL™ plus récents que sa propre version majeure ; il refusera même d'essayer, plutôt que de risquer de fournir une extraction invalide. Par ailleurs, il n'est pas garanti que la sortie de pg_dump puisse être chargée dans un serveur d'une version majeure plus ancienne  -- pas même si l'extraction a été faite à partir d'un serveur dans cette version. Charger un fichier d'extraction dans un serveur de version plus ancienne pourra requérir une édition manuelle du fichier pour supprimer les syntaxe incomprises de l'ancien serveur. L'utilisation de l'option --quote-all-identifiers est recommendée lors de l'utilisation avec des versions différentes, car cela permet d'empêcher la venue de problèmes provenant de listes de mots clés dans différentes versions de PostgreSQL™.

Dernière modification par pifor (03/05/2020 10:18:15)


Pierre

Hors ligne

#3 03/05/2020 14:50:10

gleu
Administrateur

Re : Database postgres v9.3 ; installée v12 ; pb migration des données

Il n'y a que deux moyens : trouver des RPM correspondant à la bonne version ou compiler soi-même PostgreSQL. La deuxième solution a plus de chances de réussir.

Une fois que la version 9.3 est réinstallée, il faudra utiliser cette version avec l'ancienne instance, puis exécuter le pg_dump de la version 12 pour récupérer les exports de chaque base. Il suffira ensuite de réimporter ces exports sur la version 12.

Ça fait pas mal de manipulations mais au final, en s'y prenant calmement, étape par étape, ça se fait bien.


Guillaume.

Hors ligne

#4 04/05/2020 11:40:54

lapinux
Membre

Re : Database postgres v9.3 ; installée v12 ; pb migration des données

Bonjour,
tout d'abord merci pour vos réponses.
pg_dump ou pg_dumpall ne peuvent pas être utilisés puisque le serveur v12 ne démarre pas (puisque la bdd n'est pas conforme).
Oui, effectivement je peux télécharger les sources de postgresql 9.3 et compiler. Je pense que ce sera sportif car il va y avoir des problèmes de dépendances. Mais je vais tenter l'expérience.
Avant cela je vais quand même essayer de renommer la bdd, d'en créer une vide et voir si le serveur v12 démarre correctement ...

Hors ligne

#5 14/05/2020 16:09:32

TomS
Membre

Re : Database postgres v9.3 ; installée v12 ; pb migration des données

Bonjour,

Il y a la solution docker qui peut être envisagée.

docker pull postgres:9.3

Le hub docker pour postgres remonte jusqu'à la version 9.3.10.


https://hub.docker.com/_/postgres/


Thomas

Hors ligne

#6 15/05/2020 18:08:33

lapinux
Membre

Re : Database postgres v9.3 ; installée v12 ; pb migration des données

Bonjour,
Merci, je regarde ça

Hors ligne

Pied de page des forums