Navicat连MySQL报错:1251

转载自:https://blog.csdn.net/xdmfc/article/details/80263215
感谢作者!

原因:MySQL8.0版本的加密方式和MySQL5.0的不一样,连接会报错。
解决方法:更改加密方式

  1. 进入MySQL的bin目录
  2. mysql -u root -p回车并输入密码
  3. ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;回车(更改加密方式)
  4. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123';回车(修改密码,可能非必须)
  5. FLUSH PRIVILEGES;回车(刷新)

正常情况下都会返回Query OK
第5步可能出现报错:ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'%',则是远程访问权限不正确,先选择数据库,查看一下再更改:

mysql> use mysql;
Database changed
 
mysql> select user,host from user;
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)

你可能感兴趣的:(MySQL)