小编lwi*_*lwi的帖子

mysql验证插件未加载

问题:

我在 mysql 中设置用户时遇到登录问题。老用户可以按预期登录,对于新创建的用户,我无法登录并收到错误消息。

执行的SQL:

CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON somedb.* TO 'monty'@'%';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)

预期: 我现在希望能够从我的客户端代码中以用户 monty 身份登录(适用于现有用户)。

错误:登录失败,我的客户端代码中出现以下错误消息:

SQLSTATE[HY000] [1524] Plugin '*937217B9DD8E6E458FC3F434BB7292891****' is not loaded'
Run Code Online (Sandbox Code Playgroud)

更多细节

当我检查 mysql.user 表时,我看到插件列包含用户的哈希密码,即 937217B9DD8E6E458FC3F434BB7292891****

因此,我假设 auth 插件存在错误,并遵循迁移指南(https://dev.mysql.com/doc/refman/5.6/en/account-upgrades.html)。

改变用户

ALTER USER 'monty'@'%' IDENTIFIED WITH mysql_native_password BY 'some_pass';
Run Code Online (Sandbox Code Playgroud)

有帮助。但是,一旦我执行flush privileges此操作,登录就会再次失败。

涉及的系统是一个从 mysql/mysql-server 构建的 docker 容器。

mysql  Ver 14.14 Distrib 5.7.11, for Linux (x86_64) using  EditLine wrapper
Run Code Online (Sandbox Code Playgroud)

名称-a:

Linux 1046ac1aaeee 4.2.0-27-generic 
#32~14.04.1-Ubuntu SMP Fri …
Run Code Online (Sandbox Code Playgroud)

mysql authentication

5
推荐指数
2
解决办法
6万
查看次数

标签 统计

authentication ×1

mysql ×1