前言
这应该算是MYSQL 8.0+ 报错:Client does not support authentication protocol requested by server 解决方案 的后记吧。最近重拾数据库方面的工作,又遇到了忘记root密码的问题,网上很多解决方案都是相对于5.0版本的,所以这里稍微记录一下,留给遇到相同问题的朋友。
解决方案
首先保证mysql正在运行的情况下,找到它的路径:
pgrep -fl mysql
如无意外应该会产生以下的结果:
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
我们去系统设置把MySQL停了
然后打开terminal,输入以下命令,你需要把/usr/local/mysql/bin/mysqld
换成你自己的路径:
sudo /usr/local/mysql/bin/mysqld \
--skip-grant-tables \
--skip-networking \
--user=_mysq