首页 >数据库 >mysql教程 >为什么我的 MySQL 5.7 用户表中没有'密码”列,如何更改 root 密码?

为什么我的 MySQL 5.7 用户表中没有'密码”列,如何更改 root 密码?

Susan Sarandon
Susan Sarandon原创
2024-12-19 01:53:13284浏览

Why is there no

MySQL 用户数据库没有密码列

在尝试更改 MySQL 的 root 密码的过程中,出现未知错误: “错误 1054 (42S22):‘字段列表’中存在未知列‘密码’。”这个神秘的问题似乎源于用户表中缺少“密码”列。

理解 MySQL 5.7 中的 MySQL 密码存储

深入研究,它变得显而易见在MySQL 5.7中,密码存储机制发生了重大变化。传统的“密码”列已替换为“authentication_string”。这种范式转变促使人们对密码管理方法进行了修改。

更改密码

要更新 root 密码,请按照以下更新的步骤操作:

  1. 选择mysql数据库:mysql> 使用mysql;
  2. 查看数据库内的表:mysql> 显示表;
  3. 检查用户表的列:mysql> 描述用户;
  4. 观察“authentication_string”列是否存在。
  5. 执行以下命令更改密码: update user setauthentication_string=password('1111' ) 在哪里user='root';

结论

用户表中缺少“密码”列是架构更改的意外但可以理解的结果MySQL 5.7 中引入。通过采用新的“authentication_string”列,您可以在此更新版本中有效管理 MySQL 密码。

以上是为什么我的 MySQL 5.7 用户表中没有'密码”列,如何更改 root 密码?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn