Site autonome
Si vous avez créé votre site avec une base de données en sqlite, et que pour diverses raisons vous voulez le passer en mysql, voici comment procéder :
- dans le répertoire /config, supprimer le fichier connect.php,
- vider complètement le contenu de /tmp (pour rebooter Spip)
- appeler l’url /ecrire pour relancer l’installation, choisir cette fois une base mysql,
- une fois le site installé en mysql, aller dans « Maintenance » / « Maintenance technique », et suivre les 3 étapes de « Déclarer une autre base » : choisir Sqlite3, sur l’écran suivant choisir la base sqlite existante, et valider jusqu’à « La nouvelle base a bien été déclarée ... » (cf paragraphe « 1 - Déclarer une base externe » ),
- lancer la fusion en choisissant comme source la base sqlite,
Hébergement mutualisé
Si vous avez créé une mutualisation et qu’un de vos sites, avec une base de données en sqlite, doit être converti en mysql, la méthode décrite le permet facilement :
- Sauvegardez le contenu de la base du site en SQLITE
- Récupérez cette sauvegarde
- Créez un site spip SQLITE a la racine de votre mutualisation, dans la même version que le site devant être migré.
- Transférez votre sauvegarde SQLITE sur ce site
- Installez votre SPIP avec cette sauvegarde.
Ça fonctionne ? Cool. Il suffit par la suite de reprendre la procédure classique.
- dans le répertoire /config, supprimez le fichier connect.php,
- videz complètement le contenu de /tmp (pour rebooter Spip)
- appelez l’url /ecrire pour relancer l’installation, choisissez cette fois une base mysql,
- une fois le site installé en mysql, allez dans « Maintenance » / « Maintenance technique », et suivez les 3 étapes de « Déclarer une autre base » : choisissez Sqlite3, sur l’écran suivant choisissez la base sqlite existante, et validez jusqu’à « La nouvelle base a bien été déclarée ... » (cf paragraphe « 1 - Déclarer une base externe » ),
- lancez la fusion en choisissant comme source la base sqlite,
Si vous avez cette erreur
Le site hôte et le site source ne sont pas dans la même version de base de données :
- hôte est en version 19268
- source est en version
alors il vous faudra commenter la ligne 64 de /fusion_spip/formulaires/fusion_spip.php
soit :
// $erreurs['versions_bases'] = _T('fusion_spip:erreur_versions', array('vhote'=>$spip_version_base, 'vsource'=>$vsource['valeur']));
- Ensuite il vous faudra de nouveau reconfigurer votre SPIP, Identité du site, etc...
Remarques
- Cette astuce marche aussi dans l’autre sens : passer de Mysql à sqlite, mais le besoin a été moins souvent exprimé.
- Autre article, lisible sur le Carnet : Passage de SQLite à MySQL
Aucune discussion
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 : |