🚨 错误分析:1524 - Plugin 'mysql_native_password' is not loaded
该错误表明 MySQL 服务器未加载 mysql_native_password
插件。MySQL 8.0 之后默认使用 caching_sha2_password
插件,但如果你尝试使用 mysql_native_password
,而插件未加载,就会出现这个错误。
以下是详细的解决步骤:
✅ 解决方法 1:加载 mysql_native_password
插件
🛠 步骤 1:登录到 MySQL
在主服务器上运行:
mysql -u root -p
🛠 步骤 2:加载 mysql_native_password
插件
执行以下 SQL 语句:
INSTALL PLUGIN mysql_native_password SONAME 'auth_plugin_mysql_native_password.so';
🛠 步骤 3:验证插件是否已加载
执行以下命令,查看插件列表:
SHOW PLUGINS;
检查输出中是否包含:
+-----------------------+--------+--------------------+----------------------+---------+
| Name | Status | Type | Library | License |
+-----------------------+--------+--------------------+----------------------+---------+
| mysql_native_password | ACTIVE | AUTHENTICATION | auth_plugin_mysql... | GPL |
+-----------------------+--------+--------------------+----------------------+---------+
✅ 解决方法 2:切换到 caching_sha2_password
插件
如果你不想使用 mysql_native_password
插件,可以将用户切换到 caching_sha2_password
插件,这是 MySQL 8.0 及以上版本的默认插件。
🛠 步骤 1:修改用户的身份验证插件
在主服务器上执行:
ALTER USER 'replica_user'@'%' IDENTIFIED WITH 'caching_sha2_password' BY 'your_password';
FLUSH PRIVILEGES;
✅ 解决方法 3:修改 MySQL 配置文件
如果你想让 MySQL 默认使用 mysql_native_password
插件,可以修改 MySQL 配置文件。
📌 1. 编辑配置文件
路径:
- Windows:
C:\ProgramData\MySQL\MySQL Server 8.4\my.ini
- Linux/WSL:
/etc/mysql/mysql.conf.d/mysqld.cnf
📌 2. 添加以下配置项:
[mysqld]
default_authentication_plugin = mysql_native_password
📌 3. 重启 MySQL 服务
- Windows:
net stop mysql
net start mysql
- Linux/WSL:
sudo systemctl restart mysql
✅ 验证是否解决
执行以下命令,确认主从同步连接正常:
mysql -h 192.168.110.206 -u replica_user -p
🛠 总结
问题 | 解决方法 |
---|---|
插件未加载 | 使用 INSTALL PLUGIN 命令加载 mysql_native_password |
切换身份验证插件 | 使用 ALTER USER 切换到 caching_sha2_password |
修改默认身份验证插件 | 修改配置文件,设置 default_authentication_plugin |