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

求助:恢复Debian 11环境下MariaDB 10.5通过sudo无密码登录root用户的方法

求助:恢复Debian 11环境下MariaDB 10.5通过sudo无密码登录root用户的方法

我之前也碰到过一模一样的问题,新装MariaDB时用sudo mysql -u root无密码登root特别顺畅,恢复备份后突然就报错了。看你贴的mysql.user表信息,问题根源很明确——Debian/Ubuntu系列的MariaDB默认是用unix_socket插件实现本地sudo用户无密码登录的,你的备份把root用户的认证插件改成了mysql_native_password,自然就没法继续无密码登录了。

下面是亲测有效的修复步骤:

  1. 先停止当前运行的MariaDB服务
sudo systemctl stop mariadb
  1. 以安全模式启动MariaDB,跳过权限校验和远程连接(避免临时开放权限带来的安全风险)
sudo mysqld_safe --skip-grant-tables --skip-networking &
  1. 此时可以直接无密码登录MariaDB
mysql -u root
  1. 切换到系统核心的mysql数据库
USE mysql;
  1. 将root用户的认证插件改回unix_socket
UPDATE user SET plugin = 'unix_socket' WHERE user = 'root' AND host = 'localhost';
  1. 刷新权限让修改立即生效
FLUSH PRIVILEGES;
  1. 退出MariaDB命令行
EXIT;
  1. 停止安全模式的进程,再启动正常的MariaDB服务
sudo systemctl stop mariadb
sudo systemctl start mariadb

现在你再执行sudo mysql -u root,应该就能恢复之前无密码登录的状态了。

备注:内容来源于stack exchange,提问作者fdamien12

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 14:14:36