兰州市网站建设_网站建设公司_Linux_seo优化
2026/1/7 22:03:59 网站建设 项目流程

你遇到的错误是由于 MySQL 版本不再默认支持mysql_native_password认证插件导致的。从 MySQL 8.0 开始,默认的认证插件是caching_sha2_password,而不是mysql_native_password

解释:
  • 错误ERROR 1524 (HY000): Plugin 'mysql_native_password' is not loaded表示 MySQL 中没有加载或支持mysql_native_password插件。
  • 从 MySQL 8.0 开始,mysql_native_password插件已经被弃用,默认采用caching_sha2_password插件。
解决方法:

如果你必须使用mysql_native_password插件,可以尝试以下方法:

方法 1: 使用caching_sha2_password插件

你可以使用默认的caching_sha2_password插件来设置密码,而不使用mysql_native_password

ALTER USER 'root'@'%' IDENTIFIED WITH caching_sha2_password BY 'root';

这将使用默认的caching_sha2_password插件,并设置root用户的密码为root

方法 2: 启用mysql_native_password插件(不推荐)

如果你确实需要使用mysql_native_password插件,你可以手动启用它,虽然这不建议在最新版本中使用。可以通过修改 MySQL 配置文件来加载该插件:

  1. 编辑 MySQL 配置文件(通常在/etc/mysql/my.cnf/etc/my.cnf)。

  2. [mysqld]部分添加以下行以启用mysql_native_password插件:

    default_authentication_plugin=mysql_native_password
  3. 保存文件并重启 MySQL 服务:

    sudo systemctl restart mysql
  4. 然后再次运行以下命令来设置密码:

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
方法 3: 为兼容性指定插件

如果你只想为某个用户启用mysql_native_password插件,可以在用户创建或修改时指定插件,如下所示:

CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';

或者修改现有用户:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
建议:

MySQL 8.0 及之后的版本推荐使用caching_sha2_password插件,因为它提供了更高的安全性和性能。如果没有特别的兼容性需求,建议使用caching_sha2_password插件。

你可以尝试方法 1 来解决当前问题,并避免使用mysql_native_password插件。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询