Les sauvegardes sont votre dernier recours en cas de perte de données. Sans de bonnes sauvegardes, un piratage, une défaillance matérielle ou une erreur humaine peuvent être catastrophiques. Chez Theory7, nous voyons malheureusement régulièrement des clients qui n'ont pas de sauvegarde récente lorsqu'ils en ont le plus besoin. Dans ce guide, nous vous aidons à mettre en place une stratégie de sauvegarde solide.

Pourquoi les sauvegardes sont essentielles

Les données peuvent être perdues de plusieurs manières :

  • Piratages et malwares - Les ransomwares chiffrent vos fichiers
  • Défaillances matérielles - Les disques peuvent échouer
  • Erreurs humaines - Suppression accidentelle de fichiers
  • Bugs logiciels - Mises à jour qui corrompent les données
  • Catastrophes naturelles - Incendie, inondation dans le centre de données

La question n'est pas de savoir si vous allez perdre des données, mais quand. De bonnes sauvegardes font la différence entre une petite panne et une catastrophe pour l'entreprise.

Que devez-vous sauvegarder ?

Bases de données

Les bases de données contiennent souvent vos données les plus importantes :

  • Articles et utilisateurs WordPress
  • Commandes et clients de la boutique en ligne
  • Configuration des applications

Fichiers du site web

  • Images et documents téléchargés
  • Code personnalisé et thèmes
  • Fichiers de configuration

Configuration du serveur

  • Configurations du serveur web (Apache/Nginx/LiteSpeed)
  • Configuration PHP
  • Certificats SSL
  • Jobs cron

E-mail (le cas échéant)

  • Données de la boîte aux lettres
  • Configuration des e-mails

La règle de sauvegarde 3-2-1

Une stratégie éprouvée :

  • 3 copies de vos données
  • 2 supports de stockage différents
  • 1 copie hors site

Exemple d'implémentation :

  1. Données en direct sur votre serveur
  2. Sauvegarde sur un disque externe ou un deuxième serveur
  3. Sauvegarde dans le stockage cloud (S3, Backblaze, Google Cloud)

Script de sauvegarde automatique

Voici un script de sauvegarde complet pour un serveur web typique :

#!/bin/bash
DATUM=$(date +%Y%m%d_%H%M)
BACKUP_DIR=/backups
SITE_DIR=/var/www/html
DB_USER=root
DB_PASS=motdepasse
DB_NAME=wordpress

# Créer le répertoire de sauvegarde
mkdir -p $BACKUP_DIR

# Sauvegarde de la base de données
mysqldump -u$DB_USER -p$DB_PASS $DB_NAME | gzip > $BACKUP_DIR/db_$DATUM.sql.gz

# Sauvegarde des fichiers
tar -czf $BACKUP_DIR/files_$DATUM.tar.gz $SITE_DIR

# Sauvegarde de la configuration
tar -czf $BACKUP_DIR/config_$DATUM.tar.gz /etc/apache2 /etc/php /etc/nginx 2>/dev/null

# Supprimer les anciennes sauvegardes (plus de 7 jours)
find $BACKUP_DIR -name "*.gz" -mtime +7 -delete

echo "Sauvegarde terminée : $DATUM"

Rendez le script exécutable et planifiez-le :

chmod +x /root/backup.sh
crontab -e

Ajoutez :

0 3* * * /root/backup.sh >> /var/log/backup.log 2>&1

Sauvegardes vers un emplacement externe

Les sauvegardes locales seules ne suffisent pas. Copiez vers un autre serveur :

Via rsync

rsync -avz /backups/ backup@autre-serveur:/backups/

Via stockage compatible S3

Avec rclone :

rclone copy /backups remote:bucket/backups

Via FTP/SFTP

lftp -u user,pass sftp://backup.server.com -e "mirror -R /backups /remote/backups; quit"

Fréquence de sauvegarde

Déterminez la fréquence en fonction de :

  • À quelle fréquence les données changent
  • Combien de données vous pouvez perdre
  • Capacité de stockage disponible

Schémas typiques :

  • Bases de données : Quotidiennement, pour les sites actifs chaque heure
  • Fichiers : Quotidiennement ou hebdomadairement
  • Système complet : Hebdomadairement

Vérification des sauvegardes

Une sauvegarde qui ne fonctionne pas n'est pas une sauvegarde. Testez régulièrement :

Test de restauration de base de données

mysql -u root -p test_database < backup.sql

Test d'extraction de fichiers

tar -tzf backup.tar.gz | head -20

Test de restauration complète

Planifiez périodiquement un test de restauration complète sur un serveur de test.

Politique de rétention

Ne conservez pas toutes les sauvegardes indéfiniment. Exemple de schéma :

  • Derniers 7 jours : sauvegardes quotidiennes
  • Dernières 4 semaines : sauvegardes hebdomadaires
  • Derniers 12 mois : sauvegardes mensuelles

Script pour la rétention :

# Conservez les sauvegardes quotidiennes pendant 7 jours
find /backups/daily -mtime +7 -delete

# Conservez les sauvegardes hebdomadaires pendant 4 semaines
find /backups/weekly -mtime +28 -delete

# Conservez les sauvegardes mensuelles pendant 1 an
find /backups/monthly -mtime +365 -delete

Sauvegardes DirectAdmin

Si vous utilisez DirectAdmin :

  1. Allez dans Admin > Admin Backup/Transfer
  2. Configurez les sauvegardes automatiques
  3. Définissez FTP/SFTP externe pour le stockage hors site

DirectAdmin peut sauvegarder des comptes utilisateurs complets, y compris les e-mails, les bases de données et les fichiers.

Articles connexes

En savoir plus sur les serveurs VPS chez Theory7

Besoin d'aide ?

Nous sommes là pour vous aider ! Vous rencontrez des problèmes ou avez des questions ? Notre équipe de support est là pour vous aider personnellement. Envoyez-nous un message via le système de tickets - nous répondons généralement dans quelques heures et sommes heureux de vous aider.