Exporter / importer son blog (avec phpMyAdmin)

Avant de me lancer dans la migration de mon blog vers un autre hébergeur, j’ai testé l’exportation / importation avec les outils PHP/MySql de 1&1. Article modifié le 29 juillet 2009 @ 14:41

monpanda avait décrit sur ce blog, il y a quelques temps, l’utilisation de ces outils. Je développe ici toutes les étapes pour exporter son blog.

Création d’une base de données chez 1&1

Cette base de données accueillera votre nouveau blog.

Connectez-vous à votre espace client et rendez-vous dans Applications Web > Administration de MySQL puis cliquez sur le bouton Nouvelle base de données.

Donnez-lui le nom souhaité puis validez.

Exportation du blog

  • Toujours dans la même interface, cliquez sur le bouton Administration sur la ligne de la base à exporter ; cliquez sur le nom de la base de données dans la barre latérale gauche ; l’ensemble des tables du blog s’affiche ;
  • sélectionnez toutes les tables puis cliquez sur le lien Exporter ;
  • cliquez alors sur le lien Tout sélectionner, cochez SQL, la case Transmettre de façon à pouvoir enregistrer le fichier, donnez un nom à votre fichier d’export puis cliquez sur le bouton Exécuter.

Importation du blog

  • Téléchargez les fichiers et dossiers du répertoire wordpress sur votre serveur dans un répertoire (sur mon serveur, il s’appelle BLOG1) ;
  • complétez le fichier wp-config-sample.php en ajoutant le nom de votre base de données, votre nom d’utilisateur, votre mot de passe et le serveur sur lequel est hébergée la base de données ; saisissez les clefs d’authentification dans les champs correspondants (vous pouvez vous connecter sur https://api.wordpress.org/secret-key/1.1/, le service de clefs secrètes de WordPress.org, pour les générer de façon aléatoire) ;
  • ouvrez avec un éditeur de texte le fichier d’export de la base de données, remplacez en utilisant la fonction Rechercher/Remplacer le nom du serveur du blog d’origine par celui du blog de destination, dans mon cas http://liseweb.fr/BLOG par http://liseweb.fr/BLOG1 ;
  • dans votre espace client 1&1, allez dans l’administration de la base de données créée pour accueillir votre blog, cliquez sur le nom de la base de données dans la barre latérale gauche, puis sur le lien SQL ;
  • cliquez sur le bouton Choisir le fichier et sélectionnez le fichier exporté précédemment puis cliquez sur le bouton Exécuter (en cas d’erreur à l’importation, vérifiez les lignes d’entête du fichier ; j’ai dû, pour ma part, corriger les signes ‘– ‘ des deux premières lignes de commentaire).

Le préfixe des tables de mon blog d’origine est wp_table1, j’ai donc modifié le fichier wp-config.php du blog de destination en indiquant le même préfixe. Depuis l’interface PHPMyAdmin, j’ai supprimé les tables créées par défaut par WordPress et préfixée ‘wp_’.

J’ai bien récupéré l’ensemble des données du blog !!

Configuration

Les paramètres des extensions et thèmes sont conservés, mais il faut parfois les réenregistrer ; l’apparence du blog est identique, les widgets sont à leur place dans la barre latérale ; bizarrement, les widgets textes de la barre au dessus du pied-de-page ne sont pas présents.

Il n’y a donc pas grand chose à faire si ce n’est :

  • télécharger le contenu du répertoire wp-content comprenant les plugins, thèmes, photos,… vers son serveur,
  • réengistrer les permaliens (1), de façon que le nouveau répertoire sur le serveur soit bien pris en compte,
  • réactiver le thème et enregistrer la configuration, bien que les paramètres soient conservés,
  • activer la feuille de style souhaitée de NextGEN Gallery,
  • réactiver les extensions : je les ai réactivées cinq par cinq de façon à trouver celles qui généraient des erreurs : il s’agit pour ma part de Post Template et PostLists.

Sur ce blog-ci, je n’ai pas désactivé PostLists mais seulement Post Template ; après avoir désactivé ce dernier, il semble que j’ai retrouvé mes fonctions de sauvegarde de mes brouillons sans message d’erreur. Christine, tu vas pouvoir te remettre à écrire ;-) (même si les lenteurs et erreurs 500 de 1&1 n’ont pas disparu par magie !)


Ecrit par Lise - Site

  1. Pour répondre à une question de Christine qui s’interrogeait sur la signification de cette mention, pour réenregistrer les permaliens, il faut se rendre dans Réglages > Permaliens et cliquer sur le bouton Enregistrer les modifications []

14 commentaires

Ecrire un commentaire»
  1. ychab

    Merci,
    Ça marche au poil pour moi tout ca.
    Je voulais dupliquer mon blog WordPress en local pour faire des test (je crois que tu voulais faire de même).
    Je n’avais pas penser à changer l’adresse web dans le fichier .sql!

    Merci encore :)

  2. Bonjour,

    merci beaucoup pour le tuto qui m’aide beaucoup !
    J’ai créé un blog WP 2.8.5 en local : impeccable !
    Je tente maintenant de le rapatrier chez 1&1 via cette méthode, c’est là que ça plante !
    J’arrive à ce que ma page d’accueil s’affiche à l’identique mais les liens à l’intérieur du blog sont toujours en localhost…
    Je n’arrive pas non plus à acceder à l’interface admin (Error 500)

    Je m’arrache les cheveux !!!! HEEELLPPP !!!

    Merci d’avance pour ton aide

  3. Comme je l’ai écrit, il faut remplacer le nom du serveur du blog d’origine par celui du blog de destination, c’est-à-dire tout ce qui contient localhost par le nom de votre blog en ligne.
    Avec un éditeur de texte et la fonction Rechercher/Remplacer, il est possible d’effectuer cette manipulation en une seule fois

    1. Merci pour ta réponse Lise mais j’ai déjà suivi à la lettre tes instructions (même le remplacement des chemins dans les db…) mais ça ne fonctionne pas…

      Question : faut-il installer un WP vierge avec ses db sur le serveur avant de commencer le protocole ?
      Peut-il y avoir une incompatibilité entre une MySQL 5.1 (1&1) et celle générée par mon phpAdmin du Mac ?
      Ou alors les préfixes des tables ???

      Je n’ai vraiment pas envie de tout recommencer !!! HEELLLPPP !!!

      1. faut-il installer un WP vierge avec ses db sur le serveur avant de commencer le protocole

        Oui, il faut installer un WP tout neuf, avant d’importer ses données.

        Peut-il y avoir une incompatibilité entre une MySQL 5.1 (1&1) et celle générée par mon phpAdmin du Mac ?

        Oui c’est possible.
        Ici, notre hébergeur o2switch s’est chargé du transfert, j’avais des soucis lors des importations. Je pense que cela vient de la configuration propre du serveur, et comme on ne la connaît pas…

  4. Merci pour tes info

  5. Je suis un peu novice en base de donnée.
    Comment pourrais-je obtenir votre aide ?

    1. J’ai un peu envie de répondre, quelle est précisément la question ? ;-)

      Si vous rencontrez des difficultés avec votre blog WordPress, nous avons écrit ici quelques articles. Si vous souhaitez une aide plus précise, il faudrait nous poser une question, elle aussi plus précise.
      Si c’est pour vous documenter sur les bases de données, il existe de très nombreux sites tels que :
      http://www.asp-php.net/tutorial/asp-php/phpmyadmin.php
      http://www.phpdebutant.org/
      http://php.developpez.com/cours/

  6. Bonjour,
    J’ai suivi toutes les instructions afin de passer du local vers le distant. Je suis sur MAC et j’utilise (pour la première fois) wordpress3.0.1 mon hébergeur est 1&1.
    Lorsque je charge le fichier sql j’ai un message d’erreur.
    CREATE TABLE ‘wp_commentmeta'(
    `meta_id` bigint( 20 ) DEFAULT NOT NULL AUTO_INCREMENT ,
    `comment_id` bigint( 20 ) DEFAULT NOT NULL DEFAULT ‘0’,
    `meta_key` varchar( 255 ) DEFAULT NULL ,
    `meta_value` longtext,
    PRIMARY KEY ( `meta_id` ) ,
    KEY `comment_id` ( `comment_id` ) ,
    KEY `meta_key` ( `meta_key` )
    ) ENGINE = MYISAM DEFAULT CHARSET = utf8 AUTO_INCREMENT =1

    MySQL a répondu:Documentation
    #1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near  »wp_commentmeta’ (
    `meta_id` bigint(20) DEFAULT NOT NULL AUTO_INCREMENT,
    `co’ at line 1

    Je ne connais pas suffisament ce système pour pouvoir aller plus dans le « coeur » des fichiers.
    MErci de ton aide.
    Didier

    1. Je ne peux malheureusement pas apporter de réponse à une telle question ; au moment où j’avais voulu exporter mon blog depuis 1&1, j’avais rencontré des difficultés, leur configuration ne semblait pas « standard ».
      Il est également possible que soit la configuration des serveurs en local et chez 1&1, soit la version de MySQL ou celle de PHPMyAdmin posent des problèmes de compatibilité.
      Peut-être qu’une des autres solutions proposées donnerait de meilleurs résultats
      http://liseweb.fr/BLOG/wordpress/pour-aller-plus-loin/exporter-importer-son-blog
      http://liseweb.fr/BLOG/wordpress/pour-aller-plus-loin/importexport-de-son-site-wordpress-bis
      http://liseweb.fr/BLOG/exporter-importer-son-blog-avec-wp-dbmanager

  7. Mickaël

    Bonsoir,

    Après un souci avec mon blog, j’ai dû tout réinstaller. Comme des sauvegardes sont faites depuis longtemps en local et à distance, j’avais tout ce qu’il fallait comme fichiers pour la restauration.
    J’ai suivi toutes les instructions à la lettre, je récupère bien tous les fichiers, tous les thèmes, tous les plugins, tous les commentaires … mais le HIC, car il y en a un ^^ … je ne récupère aucun de mes posts, alors qu’ils figurent bien dans mon fichier sql !
    Je n’arrive pas à savoir ce qui se passe !!

    1. Avez-vous essayé une fois tous vos fichiers importés, d’importer ensuite la table des billets (qui doit s’appeler quelque chose comme wp-post-table) ? Peyt-etre cette table-là est-elle corrompue.
      Avez-vous le moyen de contacter votre hébergeur et de le lui demander ?

  8. Mickaël

    Je suis chez OVH, j’ai fini par désinstaller le module wordpress qu’ils m’avaient fourni pour faire une installation propre moi-même, et là, miracle j’ai bien tout récupérer immédiatement.

    Merci encore pour les conseils de votre article !

    1. Ce n’est un « miracle » ;-) Les hébergeurs proposent des modules configurés par leurs soins qui n’intègrent pas l’ensemble des fonctionnalités de WordPress, bien souvent pour économiser la bande passante. Effectivement, il vaut mieux disposer de sa propre installation pour la paramétrer selon ses souhaits.

Laisser un commentaire

Votre adresse mail ne sera jamais rendue publique ni utilisée.

*Si vous écrivez un commentaire ici pour la première fois, celui-ci ne sera publié qu'après validation par un administrateur du blog. Ne l'envoyez pas plusieurs fois !
*Bien sûr, tout commentaire injurieux, publicitaire ou spam sera supprimé.
*C'est à vous maintenant !

(obligatoire)
(obligatoire)

Laisser ces deux champs tels quels :

Protégé par Invisible Defender.


  • Mentions légales
    Les différents éléments du Blog de Lise restent la propriété de leur(s) auteur(s) respectifs.


Clef two-factor authentication