Faire un backup de son site Internet - Themimitoof.fr

Faire un backup de son site Internet

Faire un backup de son site Internet

Comme vous le savez, faire des backups de son/ses site(s) Internet est très important en cas de défaillance système ou en cas de hack. Dans cet article, je vous propose ma solution pour faire un backup journalier ou hebdomadaire de mon site Internet.

 

Faire un backup de la base de données

La base de données est un des éléments les plus importants dans un site, c’est pour cela que sauvegarder sa base de données est limite plus importante que l’intégralité des fichiers de votre site.

Pour faire votre backup, vous aurez besoin d’utiliser le magnifique utilitaire mysqldump. Si vous ne l’avez pas installé ou s’il n’a pas été installé avec MySQL ou MariaDB, installez-le en tapant la commande suivante :

apt-get install mysqldump # Si vous êtes sous Debian/Ubuntu
# ou
yum install mysqldump # Si vous êtes sous CentOS/Fedora/RHEL

Ensuite, il suffit de taper la commande en entrant le nom de l’utilisateur, le mot de passe et le nom de la base de données que l’on souhaite :

mysqldump -uUTILISATEUR -pMOTDEPASSE BASE_DE_DONNEES > nom_de_la_base_`date --rfc-3339=date`.sql

Vous aurez sans doutes remarquer que j’ai rajouté la commande date --rfc-3339=date au nom de sortie du fichier afin d’avoir la date du backup mais vous pouvez bien entendu supprimer cette partie 😉

 

Si MySQL n’a pas refuser l’accès à mysqldump, vous devriez voir votre fichier de créé avec les informations de votre base de données ! Si vous décidez de suivre le reste du tutoriel, laissez le fichier où il est, on y reviendra plus tard 😉

 

Si vous souhaitez faire un backup de toutes les bases de données, il vous suffit de taper la même commande mais à la place d’indiquer le nom de la base de données, ajoutez le paramètre -all-databases  :

mysqldump -uUTILISATEUR -pMOTDEPASSE -all-databases > nom_de_la_base_`date --rfc-3339=date`.sql

 

Packager et envoyer le backup sur un serveur distant

Maintenant que le backup de notre base de données est terminé, nous allons faire une sauvegarde du dossier du site, packager le tout et l’envoyer sur un serveur distant (chez vous par exemple).

Nous allons créer une archive au format tar.gz en tapant la commande suivante :

tar zcvf nomdemonarchive-`date --rfc-3339=date`.tar.gz backupBDD.sql /var/www/monsiteweb

Adaptez la ligne en modifiant le nom de l’archive, le nom du fichier SQL et le chemin du dossier Web.

Ensuite, il ne vous reste plus qu’à envoyer votre archive sur un serveur distant et supprimer l’archive et la copie du backup du serveur (ou bien de le déplacer dans un autre dossier). Dans mon cas, j’utilise la commande scp pour transférer mes backups :

scp -p backup_2016-04-23.tar.gz utilisateur@monserveurfavori.fr:Backups/.

A vous de voir comment vous souhaitez envoyer votre backup. Beaucoup utiliseront rsync, d’autres scp ou ftp, puis d’autres se connecterons par le biais d’un client GUI FTP ou SFTP (Filezilla ou Cyberduck) pour récupérer le fichier.

 

L’avantage des commandes type rsync ou scp est que vous envoyez les données par le biais du protocole SSH et qui dit SSH dit forcément authentification à l’aide d’une clé publique ! Vous pourrez ensuite mettre en place un script exécuté par une tâche cron ne possédant aucuns mots de passes qui permettrait d’accéder au serveur distant. Ce qui n’est pas le cas avec le protocole FTP ou FTPS par exemple.

 

Voilà une solution simple et efficace de créer des backups de vos sites internet mais sachez que cette solution ne s’applique pas uniquement pour ce cas de figure mais pour pleins d’autres. Soyez imaginatifs, vous trouverez pleins de méthodes pour adapter cette solution à vos besoins 😉

 

Documentations : mysqldumptarscp

Articles relatifs

Poster un Commentaire

avatar