Dumpall.cgi est un script qui vous permet de sauvegarder toute une base
mySQL.
Chacun sait qu'il est nécessaire de réaliser des sauvegardes de ses bases de
données de façon régulière. Mais il arrive parfois que l'on soit un peu
négligent et qu'on oublie de le faire avec des conséquences parfois un peu
embêtantes.
dumpall.cgi peut se lancer à la main ou par un cron (lancement automatique
sous unix à date et heures fixes) pour créer des sauvegardes sur
l'hébergement.
Mais si l'on peut, il est préférable de les avoir sur son propre PC, et
c'est pourquoi la sauvegarde peut être envoyée directement par mail
(dossier zippé).
Prérequis pour faire fonctionner dumpall :
la capacité de faire tourner des cgi
perl 5
le module DBI - DBD::mysql interface standard pour mysql)
Pour envoyer le mail automatiquement
sendmail
le module Mime::Entity
Configuration
dumpall.cgi se configure par modification des variables de configuration
situées en tête du cgi.
$emailflag permet de définir si il faut envoyer le mail (valeur = 1) ou non (valeur=0)
$email indique a quelle adresse le mail avec la sauvegarde doit être envoyée. N'oubliez pas de mettre un \ devant le caractère @
sinon vous allez avoir une erreur dans votre script.
$basename vous permet de spécifier le nom de la base de données qui apparaitra dans le mail.
$database indique le nom de la base mysql à sauvegarder.
$hostname indique le nom d'hote du serveur mysql (généralement localhost).
$port vous permet de spécifier le port du serveur mysql.
$mysqluser et $mysqlpassword vous permettent de spécifier les paramètres de connexion que sont le nom d'utilisateur
et le mot de passe.
$mailprog indique le chemin vers le programme sendmail.
$auto_encoding permet de spécifier quel mode d'encodage des données sera utilisé pour joindre le fichier zip au mail.
$message_type et $auto_type permet de spécifier le type MIME à utiliser pour le mail et pour le fichier zip. Il est préférable
de laisser les valeurs par défaut.
$From vous permet de spécifier l'adresse email d'ou proviendra le mail de sauvegarde.
$Sujet permet de spécifier le sujet du mail que vous allez recevoir.
Comment utiliser le script ?
Vous pouvez exécuter le script de 3 manières différentes :
en le lancant via votre navigateur internet
en le lancant via CRON à des heures déterminées
en le lancant via la ligne de commande
Le fichier ZIP se trouve dans le repertoire où est installé dumpall.cgi
sous le nom dbname.zip où dbname est le nom de votre base de données au sens
mySQL.
Suivant le paramétrage du script vous en recevrez également une copie par mail.
Le fichier Zip contient un dossier DUMP_dbname dans lequel vous trouverez
deux types de fichiers : d'une part ceux commençant par DEF_ et d'autre part
ceux dont le nom est celui d'une table.
Les fichier DEF contiennent les query SQL de création de la table, tandis
que les fichiers de table contiennent les données à recharger sur la table.
Note : au moment de la sauvegarde, les caractères retour ligne dans les
champs sont remplacé par le code de retour ligne que vous souhaitez. Vous
pouvez mettre un \n pour les retour ligne de type texte, et <br> pour les
retours lignes de type html.
De façon analogue, afin d'éviter les problèmes de configuration de magic
quote, les apostrophes ' sont remplacées par \' pour être compatibles mySQL
La restauration est une manip que vous ne devriez pas avoir souvent à faire (du moins nous l'espérons).
Les fichiers sont compatibles avec phpmyadmin.
Si vous devez recréer les tables, commencez par lancer les fichiers DEF
Si vous n'avez pas besoin de les recréer, vous pouvez directement commencer
par les fichier tables.
ATTENTION : Si vous voulez faire une restauration propre, nous vous
recommandons de faire d'abord un empty sur la table existante afin de ne pas
conserver de vieux enregistrements qui feraient doublon avec la sauvegarde
que vous installez.