MySQL 8.0.32修改认证插件后返回“Query OK, 0 rows affected”是否正常?
问题解答
是的,这个返回结果是完全预期的。
MySQL 的 ALTER USER 语句在修改用户的认证插件或密码时,即便操作成功,也会返回 Query OK, 0 rows affected。这是因为这类操作属于元数据变更,修改的是系统权限表的配置信息,MySQL 不会将这类变更统计为“受影响的数据行”。
你可以通过以下语句验证修改是否生效:
SELECT user, host, plugin FROM mysql.user WHERE user = 'root' AND host = 'localhost';
如果返回的 plugin 字段值为 mysql_native_password,就说明认证插件已经成功修改。
另外补充两点:
- MySQL 8.0 版本执行
ALTER USER后会自动刷新权限,无需手动执行FLUSH PRIVILEGES;,但如果后续遇到权限问题,也可以手动执行该语句确保配置生效。 - 修改完成后,记得在 pgloader 的连接配置中使用这个 root 用户和对应的密码,测试连接是否能正常建立,确认可以顺利执行数据导入。
内容的提问来源于stack exchange,提问作者Richard Kranendonk
相关产品推荐
相关产品推荐

