Last active
January 24, 2020 09:57
-
-
Save diyfr/c53a97e4cc388db0a8df2b900f34f18b to your computer and use it in GitHub Desktop.
réaliser une sauvegarder de sa base postgres dockerisée et l'envoyer vers un serveur distant
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# A faire une fois | |
# Pour automatiser le transfert vers un autre serveur via SCP sans avoir à saisir le mot de passe | |
# Soit USER compte utilisateur de la machine distante et HOST adresse de la machine distante | |
# ssh-keygen -t rsa -C "USER@HOST" | |
# valider par défaut | |
# ssh-copy-id USER@HOST | |
# saisir le mot de passe pour USER sur HOST | |
# Service name(Host postgres) : myapp-database | |
# Considérant que le port 5432 est le port par défaut | |
# User defined brdige : myapp_bridge | |
# Database name : db_name | |
# User database db_user | |
# Password database db_password | |
# Ces binaires sont utilisés , vérifiez leur localisation | |
# docker, gzip, scp. Leurs emplacements peuvent varier d'un système à l'autre | |
FILE=yourbdd_backup_`date +%d-%m-%Y"_"%H_%M_%S`.sql.gz | |
/usr/bin/docker run --rm --link myapp-database --label "traefik.enable=false" --network myapp_bridge -e PGPASSWORD=db_password -e PGUSER=db_user postgres pg_dump -h myapp-database db_name |/bin/gzip > $FILE 2>&1 | |
/usr/bin/scp $FILE USER@HOST:/distant/folder/ | |
# on peut supprimer le fichier créé localement | |
rm $FILE 2>&1 | |
# de manière périodique vous pouvez ajouter l'appel de ce script dans crontab exemple tous les jours à 5h | |
# 0 5 * * * /chemin/du/script/pgdump.sh > /dev/null 2>&1 | |
# Restaurer un dump sous windows 10 via powershell. Le dézipper dans un premier temp | |
# se placer dans le dossier des binaires de postgres exemple C:\Program Files\PostgreSQL\9.6\bin | |
# puis lancer la commande (mylocaldbname a été créée au préalbale) | |
# .\psql.exe --dbname mylocaldbname --username postgres --no-password -f "C:\\location\\dump\\yourbdd_backup.sql" | |
# Enjoy ! |
Author
diyfr
commented
Jan 24, 2020
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment