Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment récupérer le mot de passe root mysql sous MacOS

C'est ainsi que vous pouvez le faire dans macOS Sierra, vous l'installez probablement via pkg et dans les préférences système ont une icône pour MySQL, quelque chose comme ceci :

Si est opérationnel, ouvrez un terminal et exécutez cette commande :

pgrep -fl mysql

Cela vous aidera à trouver le chemin de mysqld et la commande actuelle utilisée pour démarrer le serveur, la sortie pourrait ressembler à ceci :

6283 /usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid

La prochaine étape consiste à arrêter MySQL, vous pouvez le faire en cliquant sur le menu Préférences Système et cliquez sur Stop MySQL Server , Une fois arrêté dans un terminal, vous devrez redémarrer le serveur mais avec quelques options supplémentaires, quelque chose comme ceci :

sudo /usr/local/mysql/bin/mysqld \
  --skip-grant-tables \
  --skip-networking \
  --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid

Il s'agit bien de la même commande depuis la sortie de pgrep -fl mysql mais dans ce cas, il vous suffit d'ajouter :

--skip-grant-tables --skip-networking

Après cela, vous remarquerez que le menu des Préférences Système est à nouveau vert et que MySQL devrait être opérationnel, vous pouvez maintenant essayer de vous connecter et de changer le mot de passe :

mysql -uroot
mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR [email protected]'localhost' = PASSWORD('secret');
mysql> FLUSH PRIVILEGES;
mysql> exit

Arrêtez et redémarrez MySQL à partir du panneau Préférences Système et il devrait fonctionner maintenant avec le nouveau mot de passe.