Passer au contenu principal

Postgres

Changement de version majeure

Sauvegarder la base de données avant la mise à jour pour éviter des incompatibilité avec des modules

  1. Dump la base de donnée : postgres@alshain $ pg_dumpall > backup
  2. Stoper le service root@alshain # systemctl stop postgresql
  3. Sauvegarde l'ancien répertoire de postgres root@alshain # mv /var/lib/pgsql{,.old}
  4. Recréer la base de données
root@alshain # mkdir /var/lib/pgsql
root@alshain # chown postgres:postgres /var/lib/pgsql
root@alshain # sudo -i postgres
postgres@alshain $ postgres -D /var/lib/pgsql/data
  1. Importer les données postgres@alshain $ psql -d postgres -f ../pgsql.old/backup
  2. Relancer le service rooot@alshain # systemctl start postgresql

Sinon sans backup préalable de la DB:

  1. Mounter une sauvegarde du serveur :
    borgmatic mount --archive latest --mount-point /mnt
    
  2. Récupéré les lib manquantes des modules (et leurs dépendances):
    cp /mnt/usr/lib64/pgsql/*.so /usr/lib64/pgsql/postgresql-14/lib/
    cp /mnt/usr/lib64/libproj.so.* /usr/lib64/
    
  3. Lancer l'upgrade de postgres
    sudo -iu postgres postgresql-setup --upgrade