1.命令行登录mysql的root用户
mysql -u root -p
2.查询root用户在user表对应的Host
mysql> use mysql;
Database changed
mysql> select Host from user where user = 'root';
+------+
| Host |
+------+
| % |
+------+
1 row in set (0.00 sec)
3.修改密码成mysql_native_password格式的。
ALTER USER 'root'@'host' IDENTIFIED WITH mysql_native_password BY '新密码';
# 一般host是localhost,如果修改过,以步骤2的结果为准。以我为例,密码改成root:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
4.刷新数据库生效
FLUSH PRIVILEGES;
- 最后,重新尝试登陆navicat试试吧。