====== 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]]//