81 votes

Impossible d'entrer dans phpmyadmin en tant que root (MySQL 5.7)

J'utilise le bureau Ubuntu 16.04 (mis à jour de la 15.10).

J'avais installé phpmyadmin à partir de par apt-get install phpmyadmin . Cela fonctionne si je vais sur localhost/phpmyadmin mais je ne peux pas m'y connecter en tant que root.

Je l'ai beaucoup cherché. J'ai trouvé de nombreuses sources dans lesquelles ils suggèrent de modifier /etc/phpmyadmin/config.inc.php et remplacez l'utilisateur et le mot de passe par 'root' et '' (vide pour le mot de passe). Mais mon config.inc.php est différente de la leur. Par exemple, dans mon fichier, il n'y a pas de ligne pour l'utilisateur et le mot de passe et il semble qu'il les récupère automatiquement d'un autre fichier qui est le suivant /etc/phpmyadmin/config-db.php . Malgré cela, j'ai modifié l'utilisateur et le mot de passe dans ce fichier, mais j'obtiens maintenant cette erreur :

#1698 - Access denied for user 'root'@'localhost'

Que dois-je faire ?


Version de Phpmyadmin : 4.5.4.1deb2ubuntu1
mysql Ver 14.14 Distrib 5.7.12, pour Linux (x86_64) utilisant le wrapper EditLine

2voto

plutesci Points 331

J'ai eu le même problème, j'ai suivi la plupart des conseils et aucun n'a fonctionné pour moi ! Mon problème était le même lorsque j'ai ouvert http://localhost/phpmyadmin dans mon navigateur, il a demandé les détails de connexion.

J'utilisais racine comme utilisateur, et le mot de passe que je connaissais était correct. Et j'obtenais

1698 - Accès refusé pour l'utilisateur 'root'@'localhost'.

Il suffisait d'utiliser phpmyadmin en tant qu'utilisateur, et non root avec le mot de passe connu et il m'a laissé entrer.

1voto

Se référant à Rael Cunha :

Oui, sa solution fonctionne, et j'en ai essayé d'autres. Cependant, en faisant référence à un utilisateur ayant un mot de passe exposé sur un fichier de configuration tel que /etc/dbconfig-common/phpmyadmin.conf ressemble à une faille de sécurité pour une action à l'échelle du système.

Donc je suggérerais plutôt dans quelle MariaDB 10.1.x est concerné (some_user et some_pass seront tout ce que vous pourrez trouver) :

# mysql -u root
use mysql;
CREATE USER 'some_user'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON \*.\* TO 'some_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

et laisser la configuration de phpadmin (4) telle quelle.

Connectez-vous ensuite à phpmyadmin avec vos propres informations d'identification.

Sur mes propres installations, je remplace le '%' ci-dessus par 'localhost' pour des raisons de sécurité, mais si le port 3306 est fermé sur votre serveur, cela ne présente pas nécessairement un risque pour votre sécurité.

1voto

Hemamalini Points 119

Seul le code ci-dessous fonctionne pour ubuntu 18.04, php 7 supérieur et mysql 5.7.

CREATE USER 'phpmyadmin'@'localhost' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Ne remplacez pas 'phpmyadmin'. La création de n'importe quel autre utilisateur n'a pas tous les privilèges comme créer un nouvel utilisateur, attribuer des privilèges de base de données à cet utilisateur. Seul l'utilisateur phpmyadmin aura un accès complet.

-2voto

Si vous installez MySQL séparé, arrêtez-le par cette commande ci-dessous sudo /opt/lampp/lampp stop service mysql stop sudo /opt/lampp/lampp start

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X