J'ai essayé des choses nombreuses: comme:
use mysql;
update user SET PASSWORD=PASSWORD("password") WHERE USER='root';
flush privileges;
ou
mysql_secure_installation
ou
mysqladmin -u root -p password newpass
Ensuite flush privileges, redémarrez mysql
et mot de passe root est toujours vide : Je peux vous connecter à mysql avec un simple
mysql
sans mot de passe
(Et bien sûr, je ne peux pas vous connecter à phpmyadmin)
Comme Debian 9 la authentification par défaut (lors de la connexion par l'intermédiaire d'une douille unix / localhost) se fait via le module d'authentification socket unix:
« Les travaux du plugin d'authentification de unix_socket en appelant l'appel système getsockopt avec l'option prise SO_PEERCRED, qui lui permet de récupérer le uid du processus qui est connecté à la prise. Il est alors en mesure d'obtenir le nom d'utilisateur associé à ce uid. Une fois il a le nom d'utilisateur, il authentifie l'utilisateur se connectant comme le compte MariaDB qui a le même nom d'utilisateur « .
Donc changer le mot de passe du travail bien sûr que non, sauf si vous désactivez le plug - in. Voir aussi authentification Plugin - Unix Socket