Attention, ceci est l'archivage statique d'un ancien site qui a maintenant disparu. En savoir plus.

Bienvenue sur , le recueil de réflexions et créations en tous genres de Nicolas Hoizey, passionné de Web depuis 1996, co-créateur et Directeur de l’Innovation de Clever Age, photographe amateur, créateur du jeu HTML5 / SVG « esviji », etc.

spipBackup, pour des sauvegardes faciles et complètes de sites SPIP ou SPIP-Agora

Publié le

par Nicolas Hoizey,

tagué SPIP

et commenté 5 fois

Quel webmestre n’a jamais eu de sueurs froides en s’appercevant que le serveur ne fonctionnait plus, ou que la base de données était corrompue ? Faire des sauvegardes régulières des contenus d’un site est plus que nécessaire, surtout si ces contenus sont gérés directement en ligne1 et que la plateforme d’hébergement ne prend pas en charge ces sauvegardes.

Quelles sont les données à sauvegarder ?

  • les données de la base ne pouvant être reconstruites à partir d’autres données, c’est à dire finalement toutes les tables sauf celles d’indexation
  • les documents attachés aux articles ou rubriques, c’est à dire le répertoire IMG/ au complet

Installation de l’outil de sauvegarde

L’exécution de ce script requiert les composants PEAR suivants2 :

Le composant suivant est optionnel :

Il suffit ensuite de télécharger le script présent dans le Zip suivant :

spipBackup 1.0.0

Ensuite, il faut configurer le script en l’ouvrant dans n’importe quel éditeur, comme expliqué dans la section suivante, puis de le placer à la racine du site SPIP auquel il est destiné.

Configuration

Le début du script est à modifier en fonction de la configuration de la base de données et des options d’utilisation choisies.

Le code présent initialement correspond à ce que l’on trouve en général sur les installations par défaut pour MySQL.

  1. // Directory where the files will be created
  2. define('DIRECTORY', 'backup');
  3. define('ARCHIVE_PREFIX', 'mon_site_spip');
  4.  
  5. // Database connection parameters
  6. define('BASE_HOST', 'localhost');
  7. define('BASE_NAME', 'spip');
  8. define('BASE_USERNAME', 'root');
  9. define('BASE_USERPASS', '');
  10.  
  11. // Number of archives to keep (0 for all)
  12. define('ARCHIVES_NUMBER', 2);
  13.  
  14. // Use visualy improved version
  15. define('VISUAL_FRIENDLY', false);

Télécharger

ConstanteRôle
DIRECTORY Répertoire dans lequel doivent être placées les sauvegardes
ARCHIVE_PREFIX Préfixe des noms de fichier des sauvegardes
BASE_HOST Serveur sur lequel se trouve la base de données
BASE_NAME Nom de la base de données
BASE_USERNAME Utilisateur de la base de données
BASE_USERPASS Mot de passe de l’utilisateur de la base de données
ARCHIVES_NUMBER Nombre de fichiers d’archive à conserver. En mettant 0, on retire la limite.3
VISUAL_FRIENDLY Utilisation de l’interface plus riche indiquant la progression des actions

Utilisation

Voici un apperçu de l’interface de l’outil :

L’interface de l’outil

Son utilisation est normalement intuitive ...

Notes

1Et encore plus pour les données de type forums, statistiques, etc.

2Une version purement SPIP sans nécessité de ces composants externes est à l’étude ... ;)

3Pour éviter de surcharger le disque dur, il est vivement recommandé de ne pas conserver trop de fichiers d’archives.

Vos commentaires