Le plugin Le plugin saveauto€: sauvegarde automatique de la base

Transcription

Le plugin Le plugin saveauto€: sauvegarde automatique de la base
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 1 of 12
Le plugin saveauto€: sauvegarde automatique de la base
de données de SPIP
lundi 27 novembre 2006, par cy_altern. Dernier ajout samedi 17 février 2007
Le plugin saveauto permet de réaliser automatiquement une sauvegarde de la
base de données de SPIP selon une fréquence et des paramètres
configurables.
Un des soucis récurrent du webmestre d’un site sous SPIP c’est d’avoir la
certitude qu’en cas de «€crash€» de son site (serveur planté, mauvaise
manip...) il puisse récupérer l’
l’ensemble des données de la base MySQL afin de
pouvoir rétablir son site «€à l’identique€».
Cela implique d’avoir une sauvegarde de cette base de données qui inclut
tous les éléments saisis par les utilisateurs (articles, brèves, sites référencés,
auteurs...) au fur et à mesure que ceux-ci enrichissent le contenu du site.
Alors si votre site est actif, à moins que vous ne soyez un forcené de la
sauvegarde manuelle en utilisant l’outil intégré dans l’administration de SPIP,
il y a fortes chances que votre dernière sauvegarde ne soit pas à jour...
Ce plugin, reprise d’une «€vieille€» contrib de Silicium (publiée à l’époque sur
le site japanim.net), permet d’automatiser le processus de sauvegarde de
votre base de données afin que vous n’ayez jamais à annoncer à vos
rédacteurs que «€...le serveur à planté, il va falloir refaire la saisie de vos n
derniers articles...€».
1. Ce plugin permet€:
de réaliser une sauvegarde complète de la base de données du SPIP selon une
fréquence déterminée. Cette sauvegarde est au format .sql (ou gzippé si votre
serveur le permet). Elle est totalement compatible avec le format des fichiers
sql utilisés par votre phpmyadmin.
de paramétrer les tables à sauvegarder (ou au contraire à ne pas
sauvegarder)€: la sauvegarde étant réalisée au niveau de la base, par défaut
elle comprend l’ensemble des tables (pas seulement celles de SPIP) mais vous
pouvez configurer précisément les tables que vous désirez inclure dedans.
de stocker ces sauvegardes dans un répertoire de votre choix
d’envoyer les fichier de sauvegarde par mail à une adresse de votre choix
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 2 of 12
de configurer la «€durée de vie€» des fichiers de sauvegarde stockés
2. Installation du plugin saveauto€:
Ce plugin existe en 2 version€: [*saveauto_1_9_1*] pour spip 1.9.1 et
[*saveauto_1_9_2*] pour spip 1.9.2.
1.9.2
En fonction de votre spip récupérez le zip correspondant sur
http://zone.spip.org/files/spip-zone/, décompactez le et placez le dossier
«€saveauto_1_9_x
saveauto_1_9_x€»
saveauto_1_9_x obtenu dans votre répertoire /plugins (à créer à la racine
de votre spip si nécessaire), rendez vous sur l’interface de gestion des
plugins (menu Configuration > Gestion des plugins),
plugins cochez le plugin
«€saveauto
saveauto€»
saveauto et validez.
Vous devriez voir apparaître une icone
supplémentaire dans le menu
«€Configuration
Configuration€»
Configuration (administrateurs
uniquement).
Ce plugin ne modifie pas les tables de la
base données de SPIP, il n’en crée pas de nouvelles€: pour sa désinstallation
complète, il suffira d’effacer le répertoire /plugins/saveauto.
/plugins/saveauto
[*[ v. 1_9_1]*] Lorsque la configuration du plugin est modifiée (via l’interface
d’administration) le fichier /plugins/saveauto/inc/saveauto_conf.php qui
stocke le paramétrage des sauvegarde est réécrit€: selon la configuration du
serveur qui vous héberge, il sera peut être nécessaire de modifier ses droits
afin que cette réécriture soit possible (en cas de problème vous en serez
averti lors de la validation d’une nouvelle config par l’interface
d’administration).
[*[ v. 1_9_2]*] L’enregistrement de la configuration et l’interface de gestion de
celle-ci est basé sur le plugin config (cfg). Ce plugin doit être installé et activé
pour que saveauto_1_9_2 fonctionne. Ce plugin permet la sérialisation des
données de configuration et leur enregistrement dans la table spip_meta (de
cette façon il n’est plus nécessaire de gérer un répertoire à accès en écriture
pour le serveur comme le fait la version saveauto_1_9_1).
Pour l’instant pas d’incompatibilités repérées avec d’autres plugins (pas de
surcharge des fichiers du core de spip).
3. Fonctionnement obtenu lorsque l’
l’on intègre ce plugin€:
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 3 of 12
Les sauvegardes ne sont
PAS déclenchées par un
«€programmateur€» (spip_cron) mais sont lancées lorsqu’un utilisateur (auteur
ou administrateur selon le paramètre «€Sauvegarde
Sauvegarde déclenchée lors de la
connexion d’
d’un auteur€»
auteur€») se connecte dans l’espace privé. De cette façon tant
qu’il n’y a pas d’accès à l’espace privé (cad que le contenu du SPIP ne change
pas) il n’y a pas de création d’éventuels «€doublons€» des sauvegardes.
En revanche à chaque connexion à l’espace privé, le script est lancé€: il vérifie
si le temps écoulé depuis la dernière sauvegarde est supérieur à la fréquence
déterminée dans la configuration (paramètre «€Fréquence
Fréquence de la sauvegarde€»),
sauvegarde
et , si c’est le cas, crée un nouveau fichier de sauvegarde dans le répertoire
indiqué par le paramètre «€Répertoire
Répertoire de stockage€»
stockage de l’interface d’admin. Le
fichier de sauvegarde est au format sql ou, si votre serveur le permet, il peut
être compressé au format gz (paramètre «€Compression
Compression GZ du fichier de
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 4 of 12
sauvegarde€»).
sauvegarde
Par défaut ces sauvegardes sont stockées dans le répertoire /ecrire/data de
votre SPIP, si vous modifiez ce paramètre vous devez vous assurer que le
répertoire utilisé est autorisé en écriture pour le serveur (777 avec votre client
FTP en général) et que le chemin (relatif à la racine de votre spip) indiqué se
termine bien par un «€/
/€» (par ex.€: /spip/sauvegardes/).
/spip/sauvegardes/
Si vous utilisez un répertoire différent de celui par défaut, gardez à l’esprit
que celui-ci devrait être sécurisé€: les fichiers de sauvegardes contiennent
l’ensemble des données des articles, rubriques, brèves publiés ou non (et là,
pas question «€d’accès restreint€»...)€[1]
Si la configuration le précise (paramètre «€Sauvegardes
Sauvegardes envoyées à l’
l’adresse€»)
adresse
et si votre hébergement autorise la fonction mail() de php, le fichier de
sauvegarde obtenu sera envoyé à l’adresse mail de votre choix.
En fonction du nombre de jours configuré dans le paramètre «€Sauvegardes
Sauvegardes
considérées obsolètes après€»,
après le script va effacer les fichiers de sauvegardes
dont l’âge est supérieur au nombre de jours configuré.
Les tables à sauvegarder (ou non) sont déterminées par les paramètres
«€Tables
Tables acceptées€»
Données ignorées€»€:
par défaut le plugin
acceptées et «€Données
ignorées
sauvegarde toutes les tables (y compris celles qui n’appartiennent pas à SPIP)
sauf celles dont le nom comprend «€_
_index€»,
_temp€»
_cache€»
index «€_
temp ou «€_
cache (qui
sont utilisées par SPIP pour stocker des données volumineuses mais nonindispensables pour rétablir son intégrité€: leur structure seule est
sauvegardée).
De la même manière, le paramètre «€Eléments
Eléments à sauvegarder€»
sauvegarder permet de
choisir (de façon globale) si vous voulez sauvegarder la structure et/ou les
données des tables (option réservée aux administrateurs maitrisant ces
concepts€: si cela ne vous parle pas, choisissez «€oui
oui€»
oui pour les 2 choix
proposés dans ce paramètre€!).
Pour finir avec les options configurables vous pourrez également préciser€:
le nom de la base de données de votre SPIP€: ce paramètre ne sert qu’à
composer le nom des fichiers de sauvegarde (par défaut de la forme€:
«€nom_base_spip_2006
nom_base_spip_2006€»).
De façon complémentaire le paramètre optionnel
nom_base_spip_2006
«€Préfixe
Préfixe pour les sauvegardes€»
sauvegardes permet de composer des noms de fichiers
encore plus complets€: ce qui peut donner des noms de la forme
«€prefixe_nom_base_spip_2006
prefixe_nom_base_spip_2006€».
prefixe_nom_base_spip_2006
si vous souhaitez qu’un message s’affiche lorsque la sauvegarde à été
effectuée (à éviter si vous choisissez de faire déclencher la sauvegarde lors de
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 5 of 12
la connexion des auteurs...)
4. Restauration des sauvegardes à partir des fichiers générés
par le plugin€:
[*Attention€!!!*] les sauvegardes réalisées ne sont pas au format de celles de
SPIP€: Inutile d’essayer de les utiliser avec l’outil d’administration de Spip.
Pour toute restauration il faut utiliser l’interface phpmyadmin de votre serveur
de base de données€: dans l’onglet «€SQL
SQL€»
Emplacement
SQL utiliser le bouton «€Emplacement
du fichier texte€»
texte pour sélectionner le fichier de sauvegarde (cocher l’option
«€gzippé
gzipp逻
gzippé si nécessaire) puis valider.
valider
Les sauvegardes xxxx.gz ou xxx.sql contiennent un fichier au format SQL
avec les commandes permettant d’effacer les tables existantes du SPIP et de
les remplacer par les données archivées. Les données plus récentes que celles
de la sauvegarde seront donc PERDUES€!
PERDUES
5. Ce qu’
qu’il reste à faire€:
la sauvegarde des données de la base est une chose, mais de plus en plus les
sites sous SPIP ont toute une partie de leur contenu sous forme de fichiers
«€annexes€» (images, pdf, sons, images...) qui sont stockés dans le
répertoire /IMG
IMG€:
IMG il serait donc intéressant d’avoir la possibilité de faire une
sauvegarde de ceux-ci sous forme d’un fichier compressé qui serait transféré
par FTP sur un autre serveur (je n’imagine pas l’envoi par mail vu le volume
que cela représente€!)
les fichiers de langues pour les utilisateurs ne causant pas le french
Comme pour beaucoup d’autres plugins, afin de faciliter le developpement
collaboratif, vous trouverez l’ensemble des fichiers en cours sur le SVN de
spip-zone€: avis aux motivés€!
Notes
[1] voir cet article pour la mise en place d’une protection par .htaccess€: http://www.aixmrs.iufm.fr/formatio... > onglet «€applications€» > partie II.c.
Le plugin saveauto€: fichier de sauvegarde > 2 Mo
18 février 2007€16:21, par DomH
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 6 of 12
Bonjour,
Peut-être que je n’ai pas compris comment faire, mais ma base de donnée sauvegardée
dépasse largement la taille fatidique admise des 2 Mo admise par MySql pour l’importation
des fichiers .sql (compressé ou non)€?
En gros comment faire une sauvegarde partitionnée des mes bases de données€?
En remerciant les réalisateurs de ce plugin des plus utiles pour les désordonnés comme
moi, qui oublient les sauvegardes régulières.
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
14 février 2007€11:00, par nemo
Super ce plugin,
Un petit bug concernant la fréquence de sauvegarde (envois de mails à répétition).
Le problème vient du tri par rsort($entree)€; pour les dates du 1er au 9 du mois€;
je m’explique€:
Ma première sauvegarde date du 9 du mois donc le fichier€:
saveauto_nom_base_SPIP_2007_02_9.sql
Mais ce fichier une fois comparé à saveauto_nom_base_SPIP_2007_02_14.sql (celle
d’aujourd’hui) reste en première position avec rsort => éternel problème du tri
alphanumérique
La parade€:
ligne 157 fichier saveauto_fonctions.php remplacer
$jour = date(«€j€», $temps)€; //format numerique€: 1->31
par
$jour = date(«€d€», $temps)€; //format numerique€: 01->31
pour avoir les dates 01 02 ....
Et renommer par ftp les fichiers€:
saveauto_nom_base_SPIP_2007_02_9.sql doit devenir
saveauto_nom_base_SPIP_2007_02_09.sql pour éviter le spam involontaire.
Encore merci pour ce super plugin.
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
13 février 2007€17:28, par Patrice lefranc
Je n’arrive pas à configurer le plugin saveauto sous spip 1.9.1 (sous linux apache)
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 7 of 12
Une fois installé, je vais cocher le plugin save auto via l’icone configuration
La page d’écran se rafraichit et reste blanche.
Je n’ai plus accès à la page privée tant que je ne supprime pas le répertoire de save auto.
Une piste ...
j’ai réinstallé une 2ème instance de spip sans squelette personnalisé et j’ai le même
problème.
J’arrive à faire marché le même plugin sur un serveur windows (XAMPP + spip 1.9.1)
Merci d’avance
ça s’
s’emballe€!
11 février 2007€16:01, par Chris
Salut€! Super plugin que j’ai installé sur 3 sites... Problèmes sur un site, je reçois plusieurs
savegardes par jours, et aujourd’hui, carrément 57 d’un coup€!
Une idée€?
Liste des derniers plugins installés (qui correspondrait en date de début des problèmes)€:
€Squelette editeur
€Target
€En travaux Tiens... alors que j’ai désactivé le plug il y a 20 minutes, je viens de recevoir
encore 6 sauvegardes...
ça s’
s’emballe€!
11 février 2007€16:15, par Chris
Oh oh... 27 sauvegardes sur un autre site, sur lequel il n’y a eu aucun ajout de plugin... Y
aurait-il un rapport avec la date 11/02/07€? étrange autant que bizarre...
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
4 janvier 2007€11:03, par marabbeh
Ca ne semble pas fonctionner avec Spip 1.9.2. J’ai eu la page de configuration, puis à la
suite de la validation, page blanche.
J’utilise encore l’outil de Japanim, (avec une petite correction car il faisait parfois de
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 8 of 12
multiples sauvegardes quotidiennes) et il m’a permis de faire redémarrer un site après
plantage de la base, avec seulement 24h de pertes de données. Donc ce plugin est bien
venu.
Reste évidemment le problème des documents à sauvegarder. Je ne sais pas par quel bout
le prendre, car sur un site j’ai 250 Mo de données, ce qui me prend une heure à la main...
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
6 janvier 2007€02:19, par cy_altern
Pour l’instant ce plugin n’a pas encore été adapté pour spip 1.9.2€: en principe il doit pas
y avoir grand chose à modifier mais là j’ai pas trop le temps...
Si tu te sens de faire l’adaptation, pas de problème pour moi€: soit tu bosse directement
sur le SVN de la zone (svn€://zone.spip.org/spip-zone/_plugins_/_test_/saveauto) soit tu
peux m’envoyer un zip avec les fichiers modifiés, je m’occuperais de la mise à jour sur
spip-zone.
Sinon, pour le problème de la sauvegarde des documents, c’est un sujet qui à déja été
abordé plusieurs fois sur la liste de spip-zone et il y a plusieurs solutions envisageables
(mirroir vers un autre serveur par FTP par ex).
A priori la plus grosse difficulté en ce moment c’est de trouver quelqu’un qui ait le temps
de s’en occuper... Alors une fois encoe, si tu veux t’investir là-dessus tu es le bienvenu et
à coup sûr tu ne manquera pas de testeurs€!
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
7 février 2007€00:07, par cy_altern
la version pour spip 1.9.2 est sortie€: http://files.spip.org/spip-zone/sav...
Le plugin saveauto et gz
15 décembre 2006€20:16, par DD
Bonsoir, Ce plugin fonctionne bien (au moins pour l’install et la 1ère sauvegarde).
Juste une question€: en le configurant j’ai systématiquement le message€: Attention€: la
sauvegarde ne pourra pas être compressée car cette fonctionnalité n’est pas disponible sur
votre serveur (support de Zlib pas activé dans php.ini)
cela m’étonnait donc j’ai été voir le phpinfo et voici ce qu’il dit€: ZLib Support enabled
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP - ... Page 9 of 12
Compiled Version 1.2.2
Linked Version 1.2.2
Directive Local Value Master Value
zlib.output_compression Off Off
zlib.output_compression_level -1 -1
zlib.output_handler no value no value
merci en tout cas catherine
Le plugin saveauto et gz
7 février 2007€00:13, par cy_altern
pour que la génération «€à la volée€» des fichiers .gz soit possible, il faut l’option
zlib.output_compression à On (voir€: http://fr.php.net/manual/fr/ref.zlib.php pour plus
de détails)
Le plugin saveauto et gz
12 février 2007€14:07, par Fil
En fait, la génération de fichiers compressés peut se faire si les fonctions gzopen,
gzwrite etc sont dispo, au lieu de tester zlib_get_coding_type(). J’ai modifié pour mon
utilisation les fichiers saveauto_fonctions.php et saveauto_admin.php pour en tenir
compte, dans la version pour spip 1.9.1.
Dans saveauto_fonctions.php/saveauto_sauvegarde() (Vers 109)€: $gz = $gz &&
function_exists(’gzopen’)€;
Dans saveauto_admin.php/exec_saveauto_admin() (vers 142)€: if ($gz &&€!
function_exists(’gzopen’))
De plus, pour bien réagir à l’ouverture, le nom du fichier gz doit etre ’.sql.gz’.
Dans saveauto_fonctions.php/saveauto_sauvegarde() (Vers 160)€: $nom_fichier =
$prefixe_save . $base . «€_€» . $annee. «€_€» . $mois. «€_€» . $jour . ($gz€? ’.sql.gz’€:
’.sql’)€;
Voir en ligne : http://id-crea.com
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP ... Page 10 of 12
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
7 décembre 2006€16:41, par lilian
Bonjour,
Super pratique ce plugin. Un seul léger bémol, lorsque le fichier de sauvegarde m’est
envoyé par email, je recois en même temps un autre email m’indiquant ceci€:
----- The following addresses had permanent fatal errors ----<[email protected]>
(reason€: 554 <[email protected]>€: Relay access denied)
Un rapide grep dans les fichiers du plugin indique que l’envoi de cet email est bien lié au
plugin. Comment s’en débarrasser€??
Merci
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
6 janvier 2007€02:09, par cy_altern
C’est simplement que le test de la possibilité d’envoyer des mails par le serveur qui
héberge ton spip est fait de la façon la plus basique€: en essayant d’envoyer un mail à
une adresse bidon ([email protected])...
Alors 2 solutions€:
soit tu enlève ce test en supprimant le code correspondant€:
fichier /saveauto/inc/saveauto_fonctions.php€:
/saveauto/inc/saveauto_fonctions.php ligne 28 à 31 à supprimer
fichier /saveauto/exec/saveauto_admin.php€:
/saveauto/exec/saveauto_admin.php ligne 175 remplacer
if ($destinataire_save != ’’ AND !@mail(’[email protected]’, ’test envoi mail’, ’le message
de test’))
par
if ($destinataire_save != ’’)
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP ... Page 11 of 12
soit tu code un test de la config du serveur (pour détecter si il est possible d’envoyer des
mails) qui n’utilise pas l’envoi d’un message€: lorsque ça sera OK pour toi je l’intègre
dans ce plugin...
Bien évidemment ma préférence va à la deuxième solution€;-)
Thanks
30 novembre 2006€06:36, par Akra
Ahou€! Ça c’est bonne idée, bon greffon et explications claires.
Merci beaucoup.€;-)
14 Messages de forum
– 18 février –
Le plugin saveauto€: fichier de sauvegarde > 2 Mo
– 14 février –
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
– 13 février –
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
– 11 février –
ça s’emballe€!
– 4 janvier –
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
– Décembre 2006 –
Le plugin saveauto et gz
Le plugin saveauto€: sauvegarde automatique de la base de données de SPIP
– Novembre 2006 –
Thanks
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007
Le plugin saveauto : sauvegarde automatique de la base de données de SPIP - SPIP ... Page 12 of 12
http://www.spip-contrib.net/Le-plugin-saveauto-sauvegarde
14/03/2007