zoukankan      html  css  js  c++  java
  • SqlYog无法连接mysql数据库(包括docker环境)的解决方法

    Sqlyog安装后连接mysql数据库,报错:2058.

    这是密码加密算法更新导致的,解决如下:

    1.打开cmd 连接数据库:

    mysql -h localhost -P 3306 -u root -p123456

    2.进入mysql依次执行下面语句

    ①修改加密规则(注意不要忘记写分号“;”)

    alter user 'root'@'localhost' identified by 'root' password expire never;

    ②更新密码为“Root123"

    alater user 'root'@'localhost' identified with mysql_native_password by 'Root123';

    ③刷新权限

    flush privileges;

    如果是本地安装的mysql数据库,执行完以上步骤再连接应该就没有问题了。

    但是在docker中安装的mysql这样操作没有解决问题,而且连密码都没有修改成功,不知道是第②步弄错了还是什么原因,执行以下查询语句后发现跟本机安装的mysql查询出来的内容不一样,不知道是不是版本问题。

    SELECT HOST,USER,PLUGIN FROM mysql.user;

    结果如下:

     发现多了一行Host值为“%”的,User为“root”的数据,算法依然是caching_sha2_password.

    于是再将这个root用的密码加密算法修改为"mysql_native_password",并将密码修改为 “Root123”

    alter user 'root'@'%' identified with mysql_native_password by 'Root123';

    刷新权限

    flush privileges;

    然后再连接就没有问题了。

    猜想了一下应该是mysql的版本问题,docker中安装的是最新的8.0.19版本,而本机安装的是8.0.11,只是猜想没有验证,有兴趣的可以验证一下。

  • 相关阅读:
    #35 string(缩点+动态规划)
    BZOJ2744 HEOI2012朋友圈(二分图匹配)
    BZOJ2749 HAOI2012外星人(数论)
    BZOJ2743 HEOI2012采花(离线+树状数组)
    洛谷 P3539 [POI2012]ROZ-Fibonacci Representation 解题报告
    关于图论的一些问题模型
    洛谷 P2505 [HAOI2012]道路 解题报告
    ST表
    洛谷 P4754 True Vegetable 解题报告
    洛谷 P2053 [SCOI2007]修车 解题报告
  • 原文地址:https://www.cnblogs.com/leasonYin/p/12287183.html
Copyright © 2011-2022 走看看