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

#1 10/01/2011 11:31:00

Gold.Strike
Membre

Installer une deuxième version de PostGRE sur le même serveur

Bonjour,

J'ai vu qu'il était possible de faire cohabiter 2 versions différentes de Postgre sur le même système, mais je n'ai pas encore trouvé la marche à suivre!
Par contre, serait il possible de faire cohabiter 2 versions identiques de Postgre sur le même serveur?

J'ai en effet Postgre SQL 8.4 installé sur un serveur avec le port par défaut 5432. Sur ce serveur, je stocke plusieurs bases de données "client" et une base de syncrhonisation.
J'ai cependant un soucis avec un utilisateur qui n'arrive pas à accéder à ce port. Il faudrait donc que :
- je modifie le port utilisé par la version actuelle -> ce qui me pose problème car il faudrait modifier les informations de connexion de différents utilisateurs
- installer une nouvelle version de Postgre sur un port différent -> je souhaiterais que la version soit la même afin d'éviter les problèmes de compatibiltié

Auriez vous des conseils ou des tutoriels à me suggérer?

Merci!

Hors ligne

#2 10/01/2011 11:49:26

Marc Cousin
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

Quel système d'exploitation ? Est-ce une version compilée à la main, ou un package ? Si packgae, quel package ?
La réponse à la question est assez lié à la façon dont vous avez installé postgres.


Marc.

Hors ligne

#3 10/01/2011 11:53:27

Gold.Strike
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

Le système d'exploitation est Windows Server 2008 R2, et Postgre a été installé via un package d'installation (postgresql-8.4.4-1-windows.exe).

Hors ligne

#4 10/01/2011 12:00:28

Marc Cousin
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

Le mieux, dans ce cas, c'est d'utiliser:
- initdb pour initialiser un nouveau cluster (initdb -D répertoire_cible, éventuellement spécifier un encoding et une locale). Cette commande doit être lancée en tant qu'utilisateur postgres du système d'exploitation
- puis utiliser : pg_ctl register [-N servicename] [-U username] [-P password] [-D datadir] [-w] [-t seconds] [-o options]. Cela crée le service windows. http://docs.postgresql.fr/8.4/app-pg-ctl.


Marc.

Hors ligne

#5 10/01/2011 12:11:18

Gold.Strike
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

D'accord merci, je regarderais...

On m'a également suggérer d'utiliser le "Reverse proxy" avec Apache, afin de rediriger un des ports dispo chez le client vers le port utilisé actuellement...
Qu'en penses tu?

Hors ligne

#6 10/01/2011 12:16:34

Marc Cousin
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

Le reverse proxy apache, à ma connaissance, c'est uniquement pour l'http. Par contre un redirecteur de port simple ferait l'affaire. Ce que sait faire n'importe quel firewall par exemple.

Ou sinon, il y a des programmes susceptibles de faire office de proxy pour PostgreSQL: pgbouncer et pgpool.


Marc.

Hors ligne

#7 10/01/2011 12:20:34

Gold.Strike
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

Mais dans mon cas, quelle est la solution la plus simple à mettre en place selon toi?
- l'installation d'un cluster en parallèle
- la redirection de port

Hors ligne

#8 10/01/2011 12:25:52

Marc Cousin
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

La redirection de port est simple à mettre en place, si le système d'exploitation le supporte. Rediriger les connexions TCP du port 5433 vers 5432 est trivial sur un serveur Linux. Sous Windows, je n'ai aucune idée de comment le faire, mais je présume que c'est supporté par le système. Ça serait certainement encore plus simple à mettre en place que les solutions envisagées.


Marc.

Hors ligne

#9 10/01/2011 18:13:27

Gold.Strike
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

Je n'ai rien trouvé sous Windows...
J'ai regardé sur la configuration d'OVH comme il s'agit d'un serveur dédié, mais il ne semble qu'il n'y a rien non plus.
Je vais donc me pencher du coté de pgbouncer et pgpool...

Hors ligne

#10 11/01/2011 10:10:07

Marc Cousin
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur


Marc.

Hors ligne

#11 10/05/2011 17:14:30

Gold.Strike
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

Re-bonjour à vous,

Après avoir mis ce problème de coté pendant un moment, je suis de nouveau confronté à une situation similaire : j'ai besoin de passer à Postgre 9 pour profiter de certaines optimisations mais je souhaite garder Postgre 8.4 installé, le temps de s'assurer que tout marche bien...

Dans ce cas, la meilleure solution consiste t'elle aussi à utiliser :
- initdb
- puis pg_ctl register ...

Ou y a t'il une autre méthode?

Merci,

Hors ligne

#12 10/05/2011 19:25:22

gleu
Administrateur

Re : Installer une deuxième version de PostGRE sur le même serveur

Non, utilisez simplement l'installeur windows de la version 9. Comme ce sont des versions majeures différentes, les répertoires de données seront différents ainsi que le port.


Guillaume.

Hors ligne

#13 11/05/2011 14:24:54

Gold.Strike
Membre

Re : Installer une deuxième version de PostGRE sur le même serveur

Effectivement, je viens de tester sur mon poste en local, et il n'y a que le port qui change.
Je pense donc faire pareil sur le serveur pour les tests de migration de Postgre 8.4 à Postgre 9. Puis ensuite réaffecter le prot 5432 à Postgre 9 afin que la migration soit transparent aux utilisateurs.
Il ne devrait pas y avoir de soucis pour le changement de port non?

Hors ligne

#14 11/05/2011 15:24:02

gleu
Administrateur

Re : Installer une deuxième version de PostGRE sur le même serveur

À partir du moment où l'ancien serveur 8.4 est arrêté, non, ça devrait fonctionner tout seul.


Guillaume.

Hors ligne

Pied de page des forums