Administrateur d’une instance Mastodon, chaque mise à jour de Debian apporte logiquement un changement de version de PostgreSQL.
La mise à jour requiert une intervention manuelle.
Je ne suis pas expert, donc je me fais un mémo:
On peut lister les clusters et voir qu’on a PostgreSQL 13 et 15 qui tournent :
# pg_lsclusters
Ver Cluster Port Status Owner Data directory Log file
13 main 5433 online postgres /var/lib/postgresql/13/main /var/log/postgresql/postgresql-13-main.log
15 main 5432 online postgres /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log
On va stopper le nouveau(v15), l’effacer puis faire la mise à jour du 13 vers 15.
# systemctl stop postgresql@15-main # pg_dropcluster 15 main # pg_upgradecluster 13 main
On a maintenant tout dans le cluster v15 et le v13 est éteint:
# pg_lsclusters Ver Cluster Port Status Owner Data directory Log file 13 main 5432 down postgres /var/lib/postgresql/13/main /var/log/postgresql/postgresql-13-main.log 15 main 5433 online postgres /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log
Après vérification, on peut alors virer le v13:
# pg_dropcluster 13 main