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
    
  5. Importer les données postgres@alshain $ psql -d postgres -f ../pgsql.old/backup

  6. Relancer le service rooot@alshain # systemctl start postgresql

Sinon sans backup préalable de la DB:

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