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

Debian 9 + MariaDB 10.1.26解决root用户Adminer访问问题的最佳方案

解决Debian 9 MariaDB 10.1.26下Adminer无法登录root账户的问题

我之前也遇到过完全一致的情况——Debian 9搭配的MariaDB 10.1.26确实取消了debian-sys-maint用户,改用unix_socket让Linux root直接免密登录MariaDB root。但这个设计对Web端工具(比如Adminer)不友好,因为Adminer是通过PHP进程运行的,不属于Linux root用户,没法借助unix_socket完成认证。下面给你两种可行的解决思路:

方法一:修改root用户的认证方式为密码登录

  • 先以Linux root身份登录MariaDB(无需密码):
    mysql -u root
    
  • 在MariaDB命令行中,切换root的认证插件并设置强密码(把your_secure_password替换成你自己的密码):
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_secure_password';
    FLUSH PRIVILEGES;
    
  • 退出MariaDB:exit;,现在你可以用密码登录root了:mysql -u root -p
  • 回到Adminer界面,输入root账户和刚才设置的密码,就能正常登录管理数据库了。

方法二:创建专用的Adminer管理账户(更安全)

如果不想改动root的原生认证方式(毕竟unix_socket对本地root登录的安全性更高),可以创建一个拥有全权限的专用账户供Adminer使用:

  • 同样先登录MariaDB:mysql -u root
  • 创建账户并赋予最高权限:
    CREATE USER 'adminer_manager'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_secure_password';
    GRANT ALL PRIVILEGES ON *.* TO 'adminer_manager'@'localhost' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    
  • 退出后用这个账户登录Adminer,功能和root完全一致,同时保留了root的unix_socket认证安全特性。

提醒:无论选哪种方法,一定要设置高强度密码,避免数据库被非法访问。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 09:38:09