Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#1 Tue 09 February 2021 16:56

cmoipich
Membre
Date d'inscription: 15 Mar 2012
Messages: 21

Mise à jour majeure Postgres

Bonjour,

J'ai vu sur ce forum certaines réponses à mes questions, mais il me reste quelques points à éclaircir.

J'ai une base de donnée PostgreSQL/PostGIS 9.3 qui tourne sur Windows Server 2008 R2.
Je souhaite la faire évoluer vers une version plus récente et supportée.
Je souhaite également déplacer cette base de donnée qui à été installée il y a des années sur C: et qui a consommé presque tout l'espace disque.
Par contre, le serveur Windows Server va être mis à jour à court ou moyen terme, mais je ne maitrise pas ce calendrier.

J'ai vu sur la documentation que PostgreSQL n'a été testée sur Windows Server 2008 R2 que jusqu'à la version 9.6.
Je ne peux pas me permettre de corrompre ma BdD, je pense donc faire la montée de version une fois que le serveur Windows aura été renouvelé.

Mes question :
> Faudra-t-il que je fasse évoluer ma base de donnée vers la 10.15, puis 11.10, etc jusqu'à la 13.1 ou est-ce que je peux passer de la 9.3 à la 13.1 en une seule fois ?

> Je ne me rappelle plus de la procédure d'installation de PostgreSQL. Est ce qu'il est possible de profiter de la montée de version de PostgreSQL pour déplacer ma base de donnée ? Ou est-ce que cela ne change rien ?


C'est une opération que je n'ai jamais réalisé, et c'est un peu stressant !
Merci pour vos éclairages !

Hors ligne

 

#2 Tue 09 February 2021 17:37

Theos2000
Membre
Date d'inscription: 15 Jun 2015
Messages: 205

Re: Mise à jour majeure Postgres

Je ne suis pas un expert, mais est ce qu'un dump de la base et un restore sur un PC en local permettrait de verifier le pâssage deversion de 9.5 en 13. Aprés en ce qui concerne que certains script basé sur postgis pu plus particulierement suir pg routing fonctionne c'est une autre histoire. Mais de mon coté c'est ce que je ferais, une bonne sauvegarde / restauration en local

Hors ligne

 

#3 Wed 10 February 2021 19:56

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1025

Re: Mise à jour majeure Postgres

Bonjour,

la mise à jour d'une nouvelle version majeure postgreSQL passe soit par :
  * Un dump + restore
  * pg_upgrade (je ne sais pas si disponible / recommandé pour une base Windows)
  * replication

Si vous comptez également mettre à jour postgis à une nouvelle version majeure,
il ne faut pas oublier d’utiliser le script perl  postgis_restore pour restaurer vos données.

Donc si le volume de vos données le permet, la methode dump et restore est la plus facile à mettre en place.

Le déplacement de la base de données pourra être fait avant le restore, quand vous choisirez l'emplacement de votre nouveau cluster pg 12.

Rien n'empêche de passer directement de la 9.x à la 12.x, mais ce n'est pas impossible que quelquechose puisse mal se passer.
Vérifiez donc que tout est ok avant de mettre en prod, et conservez votre dump au chaud quelques temps au cas ou.

Hors ligne

 

#4 Mon 22 February 2021 13:37

cmoipich
Membre
Date d'inscription: 15 Mar 2012
Messages: 21

Re: Mise à jour majeure Postgres

Merci pour tous ces bons conseils!

Comme je me trouve vraiment à cours d'espace, et comme mon serveur est toujours sur Windows 2008R2, j'ai fait une première mise à jour mineure vers PG9.6. Ca m'a fait un entrainement!

Voici comment j'ai procédé :
- J'ai effectué un pg_dumpall de mes bases (fichier de 22Go) :

Code:

pg_dumpall --host=xxxxx --username=xxxxx --port=5432 > F:\dumpall\dump_1.sql

- Installé PG9.6 sur le serveur Windows, et son cluster sur le nouveau disque
- Installé PostGIS via http://postgis.net/ car mon parefeu bloque le StackBuilder
- Modifié les fichiers pg_hba.conf et postgresql.conf de manière à conserver mes anciens paramètres, et à écouter sur le port 5433
- Recréé les BdD :

Code:

psql --username=postgres --host=xxxxx --port=5433 < F:\dumpall\dump_1.sql

- Éteint PG9.3 via le menu des services Windows
- Modifié le fichier postgresql.conf pour écouter dorénavant sur le port 5432
- Redémarré PG9.6 via le menu des services Windows

Et jusqu'ici tout va bien !

Quand je serais sûr de n'avoir rien perdu, je pourrais désinstaller PG9.3 et supprimer l'ancien cluster, ou y a-t-il des fichier qu'il faut conserver ?
Lorsque j'effectuerai la mise à jour majeure vers PG13, ma base sera déja existante dans le nouveau cluster :
J'imagine qu'il faudra que je rajoute le paramètre --clean au pg_dumpall, c'est bien ça ?
Peut être que je pourrais passer par un/des pg_dump comme le propose Tumasigu, ou est-ce qu'il vaut mieux continuer avec pg_dumpall ?

il ne faut pas oublier d’utiliser le script perl  postgis_restore pour restaurer vos données.


La réinstallation de PostGIS ne suffira pas ? il sera nécessaire d'exécuter ce script ?

Merci pour tous vos éclairages qui m'ont bien aidé !

Hors ligne

 

Pied de page des forums

Powered by FluxBB

Partagez  |