====== Migration PostgreSQL ====== Dans ce guide, je vous explique les étapes que j'ai appliquée récemment pour migrer une base de données PostgreSQL d'un ancien système à une nouvelle infrastructure. Il couvre la mise à niveau du système, la sauvegarde des bases, leur transfert et restauration, ainsi que la réinitialisation du mot de passe administrateur. ===== upgrade de l'ancien SGBD ===== Pour garantir une migration fluide, commencez par mettre à jour le système et ses packages. 🖥️ Commandes à effectuer dans le terminal en tant que **root** ! apt update apt upgrade ℹ️ La version actuelle de PostGres est à 17.1.2. ===== Sauvegarde des anciennes bases ===== Une sauvegarde complète de vos bases et de vos rôles est indispensable avant toute migration. 🖥️ Commandes à effectuer dans le terminal avec le user **postgres** : Sauvegarde des bases de données : pg_dumpall -U postgres > sauvegarde.sql Sauvegarde des rôles uniquement : pg_dumpall -U postgres --roles-only > roles.sql Les fichiers sauvegarde.sql et roles.sql contiennent toutes les informations nécessaires pour la restauration. ===== Transfert vers la nouvelle machine ===== Transférez les fichiers sauvegardés depuis l'ancienne machine vers la nouvelle. Copie des fichiers ''roles.sql'' et ''sauvegarde.sql'' de l'ancienne vers la nouvelle machine. Utilisation de ''scp''. ===== Restauration ===== Une fois les fichiers copiés, effectuez leur restauration sur la nouvelle machine. 🖥️ Commandes à effectuer dans le terminal avec l'utilisateur **postgres** Importation des rôles : psql -U postgres -f roles.sql Restauration des bases de données psql -U postgres -f sauvegarde.sql ===== Réinitialiser le mot de passe de PostGres ===== Pour des raisons de sécurité, réinitialisez le mot de passe de l'utilisateur **postgres**. 🖥️ Commandes à effectuer dans le terminal en tant que **root** : echo "ALTER USER postgres with encrypted password 'your_password';" | sudo -u postgres psql --- //[[user:cedricabonnel]]//