SQLyog使用错误号码2058

当在初次使用时连接mysql显示错误号码2058,Plugin caching——sha2_passward could not be loaded:****** ”(乱码)。而命令行进入数据库无问题时。

管理员身份进入命令行, mysql -u root -p 登录到个人的 mysql 数据库,然后执行

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你想设置的密码填在这里';

此时名为root的数据库可以正常建立连接。

当你通过用户管理建立了新的数据库,假设为abc,发现新的数据库存在,但再次无法通过SQLyog建立连接,如图所示
SQLyog使用错误号码2058_第1张图片
SQLyog使用错误号码2058_第2张图片

数据库存在但是通过用户名密码测试连接新数据库仍然报2058,测试连接失败,先在命令行以管理员身份执行mysql -u abc -p进入新建数据库,再执行以下代码即可解决。

ALTER USER 'abc'@'%' IDENTIFIED WITH mysql_native_password BY '你想设置的密码填在这里';

问题在于:
localhost是%的子集。
%代表任何客户机都可以连接 ,localhost代表只可以本机连接。若ALTER USER ‘abc’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘你想设置的密码填在这里’;自然报错

你可能感兴趣的:(mysql)