
Changeant de NAS Synology, je dois déplacer mes blogs WordPress. Cette opération qui devrait être triviale ne l’est pas. Il existe plusieurs solutions, dont certaines à base de plugin. J’ai opté pour une solution plus fiable qui se décompose en trois étapes :
- Installer et paramétrer le nouveau serveur en installant un site WordPress Vierge pour vérifier son bon fonctionnement.
- Copier toute l’arborescence de fichier du blog vers son nouvel emplacement.
- Exporter puis importer la base de donnée associée.
Préparation et test du nouveau serveur
Cette opération n’est pas indispensable mais permet de s’assurer que tout est bien en place sur le nouveau serveur afin de ne pas mélanger tous les problèmes dans le cas où la migration ne se passerait pas bien. Il suffit de mettre en place un site WordPress vierge en suivant la procédure détaillée ici. Cette opération permet de vérifier le bon fonctionnement et paramétrage du serveur et du système de gestion de bases de données (sgbd).
Déplacement des fichiers
Pour la copie des fichiers, j’affectionne rsync
. Je me connecte donc sur le nouveau serveur et je fais :
rsync -a -v --delete-after <login>@<ip_ancien_serveur>:/dossier/ /dossier
Export et import de la base de données
Le paramétrage du site WordPress ainsi qu’une grande partie de son contenu (billets, commentaires…) n’est pas stockée dans l’arborescence du site mais dans une base de données.
Aussi faut-il dans un premier temps se connecter au sgbd de l’ancien serveur pour réaliser un export, puis au sgbd du nouveau serveur pour réaliser l’import. Enfin, il faut mettre à jours les informations d’accès au sgbd dans le fichier wp-config.php
du site WordPress sur le nouveau serveur.
Export
Bien entendu, l’opération d’exportation est à réaliser sur l’ancien serveur.
Pour me connecter au sgbd et réaliser l’export, j’utilise l’interface phpMyAdmin.
Sous phpMyAdmin, sélectionner la bonne base de données associée au blog dans l’arborescence à gauche puis cliquez sur l’onglet Exporter. Cocher Méthode d’exportation →Rapide (choix par défaut en principe) et Format →SQL (choix par défaut en principe). Puis valider en cliquant sur le bouton Exécuter
. Vous obtiendrez ainsi un fichier correspondant à l’export de la base de données du blog au format SQL.

Import
Les opérations se font maintenant sur le nouveau serveur. Avant d’importer le contenu de l’ancienne base de données, il faut créer la nouvelle base de données et créer un utilisateur associé (cf. billet Installer WordPress sur un Nas Synology, section Créer La base de données dédiée à WordPress). Bien noter au passage :
- L’adresse ou l’ip du nouveau serveur
- Le nom de la nouvelle base de données
- L’identifiant du nouvel utilisateur associé
- Le mot de passe de cet utilisateur
Ensuite, il ne reste plus qu’à réaliser l’importation du fichier SQL précédemment exporté. Toujours sur phpMyAdmin, sélectionner la nouvelle base de données dans l’arborescence à gauche puis cliquez sur l’onglet Importer. Cliquer sur le bouton Parcourir
pour allez chercher le fichier SQL d’export puis valider en cliquant sur le bouton Exécuter
.

Si l’adresse du blog ne change pas (ce qui est mon cas puisqu’il ne s’agit que d’un upgrade de serveur), c’en est fini avec la base de données. Dans le cas contraire, il faut mettre à jour les urls du site, par exemple en utilisant le script Search-Replace-DB de Interconnectit.
Mise à jour de wp-config.php
Dans la racine du site web sur le nouveau serveur, il faut maintenant mettre à jour le fichier wp-config.php
renseignant les 4 informations de connexion notées à la section précédante :
/** Nom de la base de données de WordPress. */ define('DB_NAME', '<base_de_données>'); /** Utilisateur de la base de données MySQL. */ define('DB_USER', '<identifiant>'); /** Mot de passe de la base de données MySQL. */ define('DB_PASSWORD', '<mot_de_passe>'); /** Adresse de l'hébergement MySQL. */ define('DB_HOST', 'localhost'); |