一切皆留「轨迹」

MySQL 连接2058 Plugin caching_sha2_password could not be loaded错误 & 开启远程连接

Apr 29,2026
5
0

在 MySQL 服务器上进行操作,步骤如下:

  1. 登录 MySQL:在服务器上打开终端,使用以下命令登录数据库:

    bash

    mysql -u root -p

    输入你的 root 密码后即可登录。

  2. 查看当前用户认证插件 (可选)
    你可以执行以下 SQL 语句,确认用户的 plugin 字段当前是否为 caching_sha2_password

    sql

    -- 将 'root' 和 'localhost' 替换为你要查看的用户和主机
    SELECT user, host, plugin FROM mysql.user WHERE user = 'root';
  3. 修改认证插件
    执行 ALTER USER 命令,将指定用户的认证插件改为 mysql_native_password

    sql

    -- 将 '你的用户名', '主机地址' 和 '你的密码' 替换成你自己的信息
    -- 示例命令:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
    ALTER USER '你的用户名'@'主机地址' IDENTIFIED WITH mysql_native_password BY '你的密码';

    关于主机地址的说明

    • 如果是本地连接(客户端和数据库在同一台机器上),主机地址通常是 'localhost'

    • 如果是远程连接(客户端通过网络连接),主机地址可能是 '%'(代表任意地址)或一个特定的 IP。

  4. 开启远程连接(若非本机连接被拒绝时使用)

    先创建用户

    CREATE USER 'root'@'%' IDENTIFIED BY '747489404';

    兼容客户端(可选,解决旧工具连接报错)

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '747489404';

    授予全库权限

    GRANT ALL PRIVILEGES ON . TO 'root'@'%' WITH GRANT OPTION;

    刷新权限生效

    FLUSH PRIVILEGES;

  5. 刷新权限并退出
    权限修改后,需要刷新让设置立即生效。

    sql

    FLUSH PRIVILEGES;
    EXIT;