Installation et utilisation de PHPMyAdmin avec WordPress
() translation by (you can also view the original English article)



PHPMyAdmin - ou PMA – est
un excellente base de données client, gratuite, libre de droits et en ligne qui
peut être utilisée pour interagir facilement avec MySQL et les bases de données
de WordPress. Je décrirai comment l'installer, la sécuriser ainsi que quelques scénarios usuels qui pourront vous faciliter la gestion de WordPress. Vous pouvez vous familiariser avec cette démo en ligne de PMA .
En plus d'offrir une interface graphique (GUI) pour la gestion de la base de données, j'apprécie aussi de pouvoir utiliser la ligne de commandes SQL avec mon navigateur sans avoir à m'inscrire sur le serveur avec une connexion sécurisée ( SSH ). Par exemple, une connexion sans fil ou avec un appareil mobile mettent régulièrement fin à une session persistante SSH, rendant le travail sur une base de données problématique.
Installation de PHPMyAdmin
La mise en route de PMA sur Linux est assez simple. Je décrirai le faire avec Ubuntu 14.x at Digital Ocean. Connectez-vous à votre serveur via SSH:
apt-get install phpmyadmin
Vous pouvez utiliser les valeurs par défaut durant l'installation ou les
personnaliser selon vos préférences.
Sur une installation typique de WordPress il n'y a pas de ports directs donnant accès à MySQL à un pirate informatique. Ils peuvent tenter d'entrer via SSH ou essayer des attaques par injection SQL sur WordPress mais ils ne peuvent attaquer directement la base de données. Une fois PMA installé, n'importe qui peut mener des attaques en ligne afin de prendre le contrôle de la base de données. La prudence s'impose donc.
Voici quelques précautions à prendre lors de la configuration de PMA.
1. Utilisez des mots de passe très forts pour tout vos comptes MySQL, spécialement pour le compte principal ( root ). Par exemple, 25 caractères pour le compte principal.
2. Utilisez différents comptes et privilèges MySQL pour chaque site WordPress sur un seul serveur. De cette façon si un mot de passe WordPress est compromis, la base de données d'un seul site sera affectée.
3. Changez l'adresse par défaut ( URL ) utilisée par PMA. Ainsi des individus mal
intentionnés ne pourront pas visiter https://yourblog.com/phpmyadmin. Bien que la sécurité de ce camoufflage ne soit pas très effective,
elle ajoute cependant un peu de protection.
Ajoutez un alias au fichier apache.conf :
1 |
nano /etc/phpmyadmin/apache.conf |
2 |
Alias /myobscuredpma /usr/share/phpmyadmin |
Redémarrez apache:
service apache2 reload
Ensuite, pour accéder à PMA, visitez http://yourblog.com/moncamouflagepma
Si vous devez modifier votre mot de passe PHPMyAdmin, vous pouvez
modifier config-db.php ici:
nano /etc/phpmyadmin/config-db.php
4. Configurez l'authentification Web pour le site PMA. Vous devrez entrer un mot de passe additionnel pour avoir accès à PMA, en plus de votre mot de passe pour la base de données,comme ceci:



Pour configurer les restrictions des usagers Apache, suivez ces étapes:
Installez htpasswd comme étant une partie de apache2-utils:
1 |
apt-get install apache2-utils |
Créez un répertoire pour y entreposer vos mots de passe:
1 |
mkdir /etc/htpasswd |
Ajoutez le support htaccess pour PMA:
1 |
nano /etc/phpmyadmin/apache.conf |
Ajoutez "AllowOverride All" ci-dessous
1 |
<Directory /usr/share/phpmyadmin> |
2 |
Options FollowSymLinks |
3 |
DirectoryIndex index.php |
4 |
AllowOverride All |
Configurez l'authentification des usagers pour PMA:
1 |
nano /usr/share/phpmyadmin/.htaccess |
1 |
AuthType Basic |
2 |
AuthName "Login Required for Access" |
3 |
AuthUserFile /etc/htpasswd/.htpasswd |
4 |
Require valid-user |
Inscrivez votre mot de passe
htpasswd -c
/etc/htpasswd/.htpasswd username
Et redémarrez Apache:
service apache2 restart
Naviguez jusqu'à votre site PMA, et vous serez invité à entrer votre nom d'usager et votre mot de passe comme indiquer ci-dessus.
Utilisation de PHPMyAdmin avec WordPress
Il est important de garder à l'esprit que PMA vous permet une manipulation directe de la base de données de WordPress; ce qui implique qu'il est très facile d'endommager votre site WordPress si vous ne savez pas ce que vous faites. Il est particulièrement imprudent d'utiliser des scripts de base de données venant du web à moins que vous les compreniez complètement. Utilisez PMA avec précaution.
Voici quelques scénarios qui peuvent vous être utiles dans la gestion de WordPress.
1. Création d'une nouvelle base de données pour l'installation de WordPress
Sans PMA, authentifiez-vous sur votre serveur via SSH. Connectez-vous à MySQL, et exécutez :
1 |
create database wordpress; |
2 |
grant all privileges on wordpress.* TO "your-mysql-username"@"localhost" identified by "your-mysql-password"; |
3 |
flush privileges; |
Avec PMA, vous pouvez exécuter n'importe laquelle requête en ligne de commande au moyen de l'interface visuelle. Sélectionnez l'onglet SQL et collez les instructions SQL ci-dessus. Cliquez sur Go pour créer la base de données.



J'utilise souvent cette façon de faire quand je crée des sites WordPress, juste avant d'exécuter l'installateur web de WordPress ( WordPress web installer ).
Ou, vous pouvez utiliser l'interface visuelle pour créer votre base de données directement.



Vous pouvez aussi créer des usagers et définir leurs privilèges de la même façon. Sélectionnez l'onglet privilèges:



Cliquez sur Ajouter un usager (Add user) et définissez ses privilèges pour la base de données souhaitée.



Pour un compte d'usager WordPress typique, cochez les éléments des cases Données et Structure (Data and Structures).
2. Sauvegarde de votre base de données
C'est une très bonne idée de
sauvegarder votre base de données avant de d'effectuer une des tâches
ci-dessous. S'il arrive un pépin vous pourrez restaurer votre site WordPress à
partir de cette sauvegarde.
En utilisant l'interface web, cliquez sur votre base de données WordPress, cliquez sur sur l'onglet exporter (Export tab) et sélectionnez Personnaliser (Custom).



Cochez l'énoncé: "Add Drop Table / View / Procedure / Function / Event"



Si vous cliquez sur Exécuter (Go), PMA téléchargera une sauvegarde de votre base de données au complet. Si vos paramètres de temps de connexion PHP d'Apache ne sont pas correctement configurés, des téléchargements de durée importante peuvent expirer et échouer. Vous pouvez ajuster ces paramètres dans PHP.ini comme mentionné sur mon site as I describe on my site.
Chercher et remplacer
WordPress n'a pas de fonctionnalité pour Rechercher et Remplacer quand les sites changent ou sont mis à jour. Vous devez ajuster le contenu de tous les articles et publications.
Avec PMA, vous pouvez exécuter une requête manuelle pour Rechercher et Remplacer le texte que vous voulez modifier ( encore une fois, soyez très prudent avec les lignes de commandes SQL vers la base de données WordPress) :
1 |
UPDATE wp_posts SET post_content = REPLACE (post_content, 'source text', 'replace with this text'); |
Une alternative pratique à l'emploi de PMA avec MySQL est le greffon Recherche et Remplace ( Search and Replace plugin ).
4. Migration de site
Souvent lors de migration de site WordPress, vers un nouveau nom de domaine ou un nouvel URL, les changements à votre nom de domaine ne seront pas appliqués même après avoir changé les domaines dans les paramètres du site. Vous pouvez appliquez ces changements à la base de données avec PMA.
Encore une fois, vous pouvez utiliser la fenêtre de requêtes SQL pour faire la mise à jour de la base de données de votre site directement.
1 |
update wp_options set option_value = replace(option_value,'http://old_domain.com','http://new_domain.com'); |
2 |
update wp_postmeta set meta_value = replace(meta_value,'http://old_domain.com','http://new_domain.com'); |
3 |
update wp_posts set post_content = replace(post_content,'http://old_domain.com','http://new_domain.com'); |
4 |
update wp_posts set guid = replace(guid,'http://old_domain.com','http://new_domain.com'); |
5 |
update wp_posts set pinged = replace(pinged,'http://old_domain.com','http://new_domain.com'); |
6 |
update wp_comments set comment_content = replace(comment_content,'http://old_domain.com','http://new_domain.com'); |
Ou, vous pouvez utiliser l'interface web. Naviguez jusqu'au nom de la
base de données, sélectionnez une table, exécutez une requête et manuellement,
changez les paramètres pour chacun des sites:



Cliquez sur Édition (Edit) et faites vos changements:



5. Réinitialisez votre mot de passe administrateur de WordPress
Peu souvent, mais dans certaines situations, les mots de passe de l'administrateur sont changés, perdus ou corrompus. Si vous pouvez accéder à votre base de données, utilisez PMA pour faire la mise à jour de votre mot de passe (vérifiez quel identifiant numérique (ID) représente l'administrateur courant):
1 |
Update 'your_database'.'your_user' SET 'user_pass'=MD5('new-password') WHERE 'wp_users'.'ID'=1; |
Lorsque complété, utilisez le nouveau mot de passe pour vous authentifier et vous connecter au tableau de bord (Dashboard) de WordPress.
J'espère que cet article vous sera utile. Inscrivez vos commentaires, rectifications ou vos suggestions ci-dessous. Vous pouvez explorer mes autres tutoriels sur my author page ou me suivre sur Twitter @reifman.
Liens suggérés
- Using PHPMyAdmin with WordPress (presentation) par Kenneth Hargis
- PHPMyAdmin Tutorial (video) par Kirk Maxi