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

MariaDB 10.6修改authentication_string遇ERROR 1356问题求助

解决MariaDB 10.6中UPDATE mysql.user报错及正确的用户认证配置方法

问题原因

MariaDB 10.4及以上版本里,mysql.user已不再是物理表,而是一个视图,直接执行UPDATE mysql.user会触发引用无效或权限类错误(ERROR 1356),必须使用官方推荐的ALTER USER语句管理用户认证信息。

正确操作步骤

1. 登录MariaDB

沿用你当前的登录方式即可:

sudo mariadb -u root

2. 将root用户密码设为空

如果需求是让root无需密码登录,执行以下标准ALTER USER语句:

ALTER USER 'root'@'localhost' IDENTIFIED BY '';

3. 切换为Unix Socket认证(可选)

若需要root通过系统用户权限直接登录(即sudo mariadb无需输入密码),可配置为socket认证:

ALTER USER 'root'@'localhost' IDENTIFIED VIA unix_socket;

4. 立即生效权限(可选)

执行完上述操作后,若要让配置立即生效,可执行:

FLUSH PRIVILEGES;

错误语法纠正

你之前尝试的ALTER USER root SET authentication_string=''属于错误语法,MariaDB中修改用户认证信息的标准格式是ALTER USER '用户名'@'主机' IDENTIFIED BY '密码';(空密码用''替代),而非SET authentication_string写法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 04:52:47