Sur Ubuntu 15.10, à un moment donné (peut-être après une installation et suppression de mariadb), mysql était incapable de fonctionner. Les tâches sont terminées, mais le serveur est en panne.
À la commande:
mysql -u root -p
le système répond avec comme un:
mysql "ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded"
Aucun moyen de se connecter, aucun plugin trouvé, aucune erreur dans les fichiers de configuration (tous par défaut).
Comment reprendre le contrôle et faire fonctionner le serveur mysql?
Réponses:
Le "unix_socket" a été appelé par le processus d'authentification mysql (peut-être lié à une migration partielle de la base de données vers mariadb, maintenant supprimée). Pour que tout fonctionne à nouveau, allez sur su:
puis suivez:
Cela arrêtera complètement mysql, contournera l'authentification de l'utilisateur (aucun mot de passe requis) et se connectera à mysql avec l'utilisateur "root".
Maintenant, dans la console mysql, utilisez la base de données administrative mysql:
Pour réinitialiser le mot de passe root sur mynewpassword (changez-le à votre guise), pour en être sûr:
Et celui-ci écrasera la méthode d'authentification, supprimera la demande unix_socket (et tout le reste), en restaurant une méthode de mot de passe normale et fonctionnelle:
Quittez la console mysql:
Arrêtez et démarrez tout ce qui concerne mysql:
N'oubliez pas
exit
le mode su.Le serveur MySQL est maintenant opérationnel. Vous pouvez vous connecter avec root:
ou ce que vous voulez. L'utilisation du mot de passe est opérationnelle.
C'est ça.
la source
mysqld_safe
n'a pas d'option comme--skip-grant-tables
.. que donne?mysqld --verbose --help
mysqld_safe
quoi se plaint l'argument --skip-grant-tables n'existait pas j'ai utilisémysqld
. Cependant, il n'arrêtait pas de se plaindre de ne pas pouvoir créer les fichiers de socket/var/run/mysqld/
. J'ai vérifié la configuration d'apparmor et il avait les autorisations appropriées. Pour résoudre ce problème , je devaismkdir /var/run/mysqld/
puis donner des autorisations complètement ouvertes:chmod -R 777 /var/run/mysqld/
. Ensuite, je pourrais enfin démarrer le démon et changer le plug-in en "mysql_native_password".Voici mes étapes à suivre:
la source