Déplacer ou convertir une base de données SPIP met en jeux deux aspects :
- le changement de moteur de base de données (ou même de serveur),
- le changement de structure des tables SPIP entre deux versions.
et il ne faudrait pas omettre la gestion des champs ou tables spécifiques complémentaires, liés aux plugins ou améliorations personnalisées à SPIP.
Les Formats de la base de données
Une base de données SPIP est stockée dans un serveur de bases de données(MySQL, SQLite..) dans un jeu de tables normalisées, éventuellement avec un $prefix
distinct du préfixe standard spip_
.
Le format natif n’est pas toujours facilement transportable sans difficultés (encodages, moteur interne..) entre serveurs du même type, sans parler d’un changement de moteur de SGBD.
En plus de leur format interne, tous les moteurs SQL savent généralement faire un « dump » à un format spécifique, et un « export SQL » uniquement avec les instructions standard SQL [2] ; malheureusement ces « dump SQL » ne sont pas tous compatibles entre eux.
D’autre part, reprendre un format SQL nécessite souvent l’accès à un outil particulier (le moteur mysqld, ou PhpMyAdmin rendu intégré à spip par un plugin), nettement moins convivial que SPIP et pas toujours accessibles (meme par le webmestre), selon les contraintes système et sécurité posées par l’hébergeur.
SPIP avait donc depuis longtemps intégré dans son interface privée un outil de gestion des sauvegarde et restauration à un format natif -texte- inspiré de XML. Celui-ci est actuellement abandonné dans la nouvelle version SPIP3, en attendant qu’un plugin equivalent [3] soit finalisé ; mais cela pose le problème des imports et exports entre bases lors de la transition de SPIP2 en SPIP3.
Remarquons qu’un problème analogue est plus souvent traité, à savoir transférer un site distant vers un serveur local pour mise-au-point de nouveaux squelettes, ou au contraire Transférer un site local vers un site distant, ces démarches mettent en évidence l’ensemble des fichiers et étapes à respecter, mais restent implicitement sur la même version de base SPIP, voire une montée de version(cf.#migration ).
Certains plugins de Sauvegardes (Sauvegarde Automatique, et Mes_Fichiers..) apportent des facilités complémentaires, pour permettre l’envoi d’une sauvegarde par mail, ou la récupération aussi des documents [4] sans apporter de réponse au changement de format, voir au contraire en régression liée à phpMyAdmin.
Par ailleurs, un autre plugin « migration » permet de « transporter » [5] une base SPIP vers un autre serveur (base et documents joints et squelettes, donc sur le meme contenu déjà récupérable par Mes_Fichiers : lire la documentation de cet outil prodigieux, malheureusement uniquement référencé et documenté chez Nursit !
Le cas particulier du passage à SPIP 3
La version SPIP3est déjà largement utilisée [6] de façon fiable, et vous pourrez avoir envie d’y passer : cela est parfaitement raisonnable, après en avoir compris les implications, car le retour en arrière est quasiment impossible !
- Il vous faut savoir que des modifications importantes de la structure de base de données sont automatiquement réalisées lors de la mise à jour, en particulier sur la gestion des tables liées aux Mots-clés [7] une extension de SPIP toujours considérée comme standard : tout retour en arrière vous obligera a des manipulations plus complexes, car vous seriez obligé de restaurer totalement une ancienne structure de base, donc avec PhpMyAdmin ou MySQL.
- le système des plugins a également connu des modifications, liées à l’intégration de Bonux et la modification du descriptif traditionnel plugin.xml
devenu paquet.xml
pour la nouvelle version ; les plugins ne sont pas portés immédiatement : vérifier la compatibilité d’une nouvelle version avec un site testé en SPIP3 !
La démarche qui semble conseillée en tenant compte de ces deux points majeurs est la suivante :
- sauvegarde complète du site (y compris IMG , -base de donnée [8]- squelettes et répertoire des plugins installés
- suppression des repertoires de programmes, extensions et de cache, téléchargement de la nouvelle version [9].
Spip 3 ouvre ou reconnaît la vieille base en MySQL sans problème (ou devrait) sans qu’il soit nécessaire de l’importer au départ.... - la prochaine connexion administrateur lance la procédure de montée de version,
à faire suivre immédiatement d’une nouvelle sauvegarde (celle-ci génère un fichier sqlite). - si vous voulez passer votre base en sqlite, détruisez votre connect.php [10] pour relancer une installation neuve SPIP 3 (qui propose sqlite par défaut.
A la fin de l’installation vous mettant en interface privé, il vous suffit de ré-importer la sauvegarde réalisée en SQLite à l’issue de l’étape 3.
Il vous reste désormais à découvrir les nouveautés de SPIP 3, exposées dans des articles (encore « privés ») sur les sites de la galaxie...
Discussions par date d’activité
Une discussion
J’ai augmenté la taille de mon site et j’ai perdu des fichiers en chemin
comment les récupérer ?
Par exemple un fichier appelé
18 mars 1871 - La Commune de Paris qui était à l’adresse :
www.matierevolution.org/spip.php?article3313
merci de m’aider si c’est possible
Robert Paris
site : www.matierevolution.org
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |