web-dev-qa-db-fra.com

Pour que la commande "wp config create" ("wp core config") soit configurée, il faut que la base de données soit utilisateur "tous les hôtes"?

Ma commande wp config create:

wp core config --dbname=wordpress --dbuser=wordpress --dbpass='this is not the real password'

Le lancer:

$ wp core config --dbname=wordpress --dbuser=wordpress --dbpass='this is not the real password'
ERROR 1045 (28000): Access denied for user 'wordpress'@'localhost' (using password: YES)

Certaines raisons expliquent pourquoi je pense que le problème est que wp-cli tente d'utiliser la version "\ @localhost" de l'utilisateur que je spécifie; depuis le moniteur MariaDB:

MariaDB [(none)]> SELECT Host, User FROM mysql.user;
+-----------+-----------+
| Host      | User      |
+-----------+-----------+
| %         | wordpress |
| 127.0.0.1 | root      |
| ::1       | root      |
| localhost |           |
| localhost | root      |
+-----------+-----------+

Cela n'a pas fonctionné non plus:

$ wp core config --dbhost=\% --dbname=wordpress --dbuser=wordpress --dbpass='this is not the real password'
ERROR 2005 (HY000): Unknown MySQL server Host '%' (8)

Comment puis-je dire à wp-cli d'utiliser le '% version' du wordpress user?

Un problème apparemment pertinent de GitHub pour le projet wp-cli :

1
Kenny Evitt

Vous avez probablement un utilisateur anonyme '' @ 'localhost' ou '' @ '127.0.0.1' dans MariaDB. La solution recommandée consiste à supprimer cet utilisateur anonyme (c'est généralement une bonne chose à faire de toute façon).

1
yurha

Pour les utilisateurs configurés en tant qu’utilisateur "tous hôtes", c’est-à-dire que la valeur Host dans la table mysql.user pour la ligne correspondant à cet utilisateur est '%', il n’ya rien à faire. wp-cli WILL tentera de se connecter en tant que "version hôte local" de cet utilisateur, mais cela devrait suffire si l'utilisateur est vraiment un utilisateur "tous les hôtes".

1
Kenny Evitt