错误2059
原因:该错误经常出现在MYSQL 8以上,这是由于MYSQL8新增了加密方式“caching_sha2_password”,而我们的远程软件不支持这种新的加密方式,所以导致了该错误发生。
解决方案:我们只需要将MYSQL的加密方案改为原来的”mysql_native_password”即可。
- 首先我们修改加密方式,然后刷新权限。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
FLUSH PRIVILEGES;
错误1130
原因:出现这种情况原因是远程连接数据的用户权限不够,虽然也是ROOT用户,但是只允许本地连接,拒绝远程访问。
解决方案:
- 1.我们找到mysql数据库中的user表的host列,然后将”localhost”改为”%”即可
mysql>usemysql
mysql>update user set host = '%' where user ='root';
mysql>select host, user from user;
- 2.将远程访问权限开放,之后刷新权限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
Mysql flush privileges;
- 3.直接跳过登录验证:我们在mysql的根目录中找到my.ini,然后编辑该文件,在文件中添加如下内容
[mysqld]
skip-name-resolve
skip-grant-tables