赞
踩
部门升级数据库版本:
今天下了个 MySQL8.0,发现Navicat连接不上,总是报错1251;
原因是MySQL8.0版本的加密方式和MySQL5.0的不一样,连接会报错。
从网上看了一些资料,试了很多种方法,终于找到一种可以实现的:
更改加密方式:
1,命令行进入mysql的root账户:
C:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -uroot -p
Enter password: ****
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
2,更改加密方式
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
Query OK, 0 rows affected (0.10 sec)
3,更改密码:该例子中 toor为新密码;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'toor';
Query OK, 0 rows affected (0.35 sec)
4,刷新权限
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.28 sec)
注:
'root' 为你自己定义的用户名
'localhost' 指的是用户开放的IP,可以是'localhost'(仅本机访问,相当于127.0.0.1),可以是具体的'*.*.*.*'(具体某一IP),也可以是 '%' (所有IP均可访问)
'password' 是你想使用的用户密码
现在使用Navicat 去连接 MySql,问题就解决了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。