You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

是否存在支持ed25519认证的mysqlnd插件?MariaDB登录phpMyAdmin报错

关于mysqlnd支持ed25519认证插件的问题

好问题!我之前踩过类似的坑,咱们先把核心情况说清楚:

目前官方的mysqlnd扩展并没有提供支持ed25519认证的插件。

原因很简单:MariaDB的ed25519认证是其专属的认证实现(虽然算法是标准的,但MySQL官方并未将其纳入默认支持的认证体系),而PHP依赖的mysqlnd是官方维护的MySQL驱动,目前仅支持MySQL原生的几种认证方式——比如你在phpinfo里看到的auth_plugin_mysql_native_password,还有caching_sha2_password,ed25519不在官方支持的列表中。

那要解决phpMyAdmin的登录问题,给你两个可行的方案:

方案一:折中使用原生密码认证(推荐新手)

给数据库新增一个专门用于phpMyAdmin登录的账号,采用mysql_native_password认证方式,这样就能绕过ed25519的兼容性问题。执行以下SQL命令:

CREATE USER 'pma_admin'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的高强度密码';
GRANT ALL PRIVILEGES ON *.* TO 'pma_admin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

之后用这个账号登录phpMyAdmin就能正常连接了。

方案二:编译支持ed25519的PHP驱动(适合有服务器权限的用户)

如果一定要坚持使用ed25519认证,只能通过编译PHP时替换底层连接器的方式实现:

  • 先安装与你的MariaDB服务器版本匹配的MariaDB Connector/C
  • 重新编译PHP,指定使用MariaDB Connector/C而非默认的mysqlnd
    这样编译后的mysqli/PDO扩展就能支持ed25519认证了,但这个操作需要一定的服务器编译经验,不建议新手尝试。

总结一下:phpMyAdmin本身不限制认证方式,只要底层的PHP数据库驱动支持ed25519,它就能正常工作,但目前官方mysqlnd确实没有对应的插件,所以只能通过上述两种方式解决。

内容的提问来源于stack exchange,提问作者eciii

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 04:25:35