Je gère un site web LAMP sous Linux 10.0.4 LTS. Je suis un administrateur système débutant (je suis cependant un développeur) et je cherche des conseils sur la meilleure façon de mettre en œuvre la sauvegarde de mon site web. Ma base de données est mySQL et TOUTES mes tables de base de données utilisent le moteur de base de données InnoDb.
Ce sont les conditions requises pour la sauvegarde que je veux mettre en place :
-
incorpore des sauvegardes incrémentielles et complètes de la base de données mysql J'aimerais avoir des sauvegardes incrémentales toutes les heures, mais aussi des sauvegardes quotidiennes, hebdomadaires et mensuelles. Mais il n'est pas clair dans mon esprit quelle rotation utiliser pour ces différents ensembles de données de sauvegarde - et aussi comment les gérer (et plus important encore, comment restaurer la base de données à partir d'un ensemble de sauvegardes complètes/incrémentales pour une date)
-
Je voudrais compresser et crypter les données, afin de pouvoir les stocker à distance (Amazon S3).
-
Je souhaite que cette opération soit entièrement automatisée (c'est-à-dire qu'elle soit exécutée comme une tâche cron).
Note : Mon serveur est "headless" dans le sens où il n'a pas de fenêtrage X ou autre interface graphique installée, donc je pense mettre en œuvre la sauvegarde nous un bash script. Alternativement, s'il existe un logiciel qui peut m'aider à exécuter ce type de sauvegarde, alors il doit pouvoir être exécuté à partir de la ligne de commande.
Les éléments que je dois sauvegarder sont :
- base de données mysql
- les fichiers du site web (dans un dossier spécifié. Idéalement, je voudrais laisser de côté certains fichiers qui sont générés automatiquement)
- les fichiers de configuration
- divers fichiers de données dans différents dossiers
Voici mes questions :
-
Y a-t-il un logiciel existant que je peux utiliser pour faire cela, ou dois-je écrire le mien (bash script) ?
-
Quelle est la stratégie de sauvegarde recommandée (en termes d'exécution horaire, quotidienne, hebdomadaire, etc.), et comment restaurer le site Web à partir d'un moment donné ?
Si je dois écrire mon propre script bash (étant également un novice en matière de script bash), je serai reconnaissant si quelqu'un pouvait fournir un script squelette pour m'aider à démarrer.