1、问题描述
使用
set password for 'root'@'localhost'=password('MyNewPass4!');命令修改mysql数据库root用户密码提示**ERROR 1133 (42000): Can't find any matching row in the user table**错误
2、主要原因
-
错误提示的字面意思:
在用户表中找不到任何匹配的行 -
登录
mysql执行以下命令
use mysql;
select Host,User from user;

主要原因是修改密码的条件不否
3、解决办法
- 将
set password for 'root'@'localhost'=password('MyNewPass4!');代码中的localhost修改%,与数据库Host字段值一致
set password for 'root'@'%'=password('MyNewPass4!');
- 刷新
flush privileges;

本文详细解析了在使用特定命令修改MySQL数据库root用户密码时遇到的“Can't find any matching row in the user table”错误原因及解决方案。通过调整命令中的主机名参数,确保其与数据库Host字段值一致,成功解决了该问题。
3028





