Bonjour,
Trop impatient je suis passé à debian 12. Tout s’est bien passé sauf pour postgresql. je crains ne pas avoir porté assez d’attention au message d’alerte lors de la mise à niveau.
Si les données sont toujours présentes (/var/lib/postgresql/13/main) je n’arrive plus à me connecter au serveur avec phppgadmin.
Ma question est simple : comment faire ?
merci
Bonne journée
Et en cli, tu parviens à te connecter ? le serveur postgres est bien démarré au moins ?
Il y a quoi dans les logs apt et dpkg ?
les paquets pour la version 15 et la version 13 sont installés
sur l’ordinateur qui m’intéresse (celui ou sont stockées les données de la version 13)
J’arrête le serveur (sudo service postgresql stop)
Je relance sudo service postresql start
J’essaie de me connecter via phppgadmin (qui est installé) https://localhost/phppgadmin réponse la connexion a échoué
Il semblerait logique de renommer /var/lib/postgresql/13 en /var/lib/postgresql/15
Merci de cette réponse qui convient parfaitement à un béotien informatique.
Soyons fou et poussons la logique : copier le contenu de /var/lib/postgresq/13 dans /var/lib/postgresql/15 ???
Bonjour,
Il vaut mieux utiliser les outils fournis par postgresql dans le cas d’une mise à jour.
Stopper le service : # systemctl stop postgresql.service
Supprimer le nouveau cluster créé par défaut : # /usr/bin/pg_dropcluster --stop 15 main
Mettre à jour l’ancien : # /usr/bin/pg_upgradecluster --keep-port --no-start 13 main
# ces options ne démarrent pas le nouveau cluster et ne changent pas le port de l’ancien, donc aucune base n’est accessible !
# pg_lsclusters
# pour lister les clusters et leur statut
Pour modifier les ports d’écoute des clusters, aller dans /etc/postgresql/13/main/postgresql.conf
et /etc/postgresql/15/main/postgresql.conf
Pour lancer un cluster : # pg_ctlcluster 15 main start
ou # pg_ctlcluster 13 main start
Pour supprimer un cluster, par exemple l’ancien : # /usr/bin/pg_dropcluster --stop 13 main
Pour démarrer le cluster automatiquement, ce qui n’est pas le cas par défaut, remplacer manual par auto dans /etc/postgresql/15/main/start.conf
Bonjour
J’ai essayé mais dès la deuxième commande (supprimer le nouveau cluster créé par défaut) la réponse est : Error: specified cluster does not exist.
Si je regarde dans /var/lib/postgresql je n’ai que le dossier 13 qui est installé pourtant postgresl et postgresql-client sont installés en version 13 et 15
Merci
Il va falloir commencer par choisir entre 13 et 15.
Si tu souhaites migrer en 15, il semble préférable de supprimer postgresql-client-13.
/usr/bin/psql -> ../share/postgresql-common/pg_wrapper
Actuellement, /usr/bin/psql
doit pointer sur la version 13.
Prends soin de sauvegarder /var/lib/postgresql/ 13 en cas de fausse manip.
e ne suis pas certains que ce soit une bonne idée. Mieux vaut modifier la configuration de la localisation des data plutôt. car si des éléments du répertoire figurent quelque par ailleurs, ca aura des impacts.
A éviter avec les bases de données de ce type ça ne marchera pas correctement.
avec postgresql, sur la même machine, tout ce qui concerne postgresql doit être à la même version, car sinon des soucis sont à prévoir.
OK, la version 15 n’a pas créé de cluster, donc tu peux poursuivre les commandes.
s’il s’agit des commandes que tu as indiqué précédemment cela ne fonctionne pas car comme demandé par Verner j’ai enlevé postgresql-client-13 et ne peut plus le ré-installer car ne figure plus dans les logiciels disponibles.
De plus dans /var/lib/postgresql je n’ai aucun fichier 15 (mais j’ai toujours le 13).
Ces commandes doivent fonctionner car elles sont issus du paquet postgresql-common
, dont dépend tout serveur Postgresql, y compris postgresql-15
.
Que te renvoie # pg_lsclusters
?
Tu n’installes avec le paquet postgresql-client
, de la même façon que tu as installé postgresql-server
.
Tu ne précises pas la version. le système de paquets s’en charge.
D’autre part, tu es sur Debian 12, donc Instable par définition; il faut donc t’attendre à des difficultés.
pour les difficultés à attendre oui je sais
pg_lsclusters répond 13 main 5432 down,binaries_missing postgres /var/lib/postgres/13/main /var/log/postgresql/postgresql-13-main log
postgresql-common est intallé
J’ai trouvé sur le site postgreql la version 13
installé
Puis j’ai fait la série de commandes indiquées par lsam
stopper servie postgreql
supprimer le cluster 15 (il n’y en avait pas)
mettre à jour l’ancien
modifier les ports d’écoute de 13 (5432) et 15 (5433) en 13 (5433) et 15 (5432)
supprimer le cluster 13
modifier start.conf en auto (il l’était).
Mais je ne peux toujours pas me connecter en graphique que ce soit avec phpgadmin ou adminer
Il manque a priori le démarrage du cluster # pg_ctlcluster 15 main start
Que donne encore # pg_lsclusters
?
J’ai démarré le cluster 15
puis
pg_lsclusters = 15 main 5432 online postgres /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log
mais phppgadmin ou adminer n’accèdent toujours pas
Est-ce que pg_hba.conf ne serait pas en cause.
Après l’installation de postgresql j’ai fait la configuration préconisé par certains sites (notamment création d’un utilisateur).
Mais aussi modification de pg_hba.conf
J’ai modifié la colonne de METHOD en md5 pour les lignes :
IPv4 local connections
IPv6 local connections
replication privilège pour les lignes host (au lieu de scram-sha-256)