MySQL 5.7.16 修改密码提示 ERROR 1054 (42S22): Unknown column ”password” in ”field list”的原因

  • Post category:http

首先,我们需要说明一下该错误的原因。当 MySQL 5.7.6 及以上版本的 MySQL 重新配置过密码策略之后,密码字段的名称从“Password”更改为“authentication_string”。因此,如果您尝试使用“Password”字段修改或检索密码,则会发生这个问题。

下面是如何使用“authentication_string”字段从 MySQL 5.7.6 及更高版本中修改密码的步骤:

  1. 使用以下命令在 MySQL 中连接到您的帐户:
mysql -u username -p

其中,用户名是您的 MySQL 用户名,并提示输入密码。在这个示例中,我们将使用 root 用户。因此,您将键入:

mysql -u root -p

然后,输入密码并按“Enter”。

  1. 然后,我们需要在 MySQL 命令提示符下运行以下命令:
ALTER USER 'username'@'localhost' IDENTIFIED BY 'new_password';

这里,“username”是要更改密码的 MySQL 用户名,“localhost”是 MySQL 主机名(在本地运行 MySQL 服务器的场景下),而“new_password”是要设置的新密码。

例如,如果我们想要为名为“john”的 MySQL 用户设置密码“12345678”,我们将运行以下命令:

ALTER USER 'john'@'localhost' IDENTIFIED BY '12345678';

如果您的电子邮件地址是您的 MySQL 用户名称,请改为使用电子邮件地址。

  1. 最后,在 MySQL 命令提示符下输入以下命令来刷新特权
FLUSH PRIVILEGES;

这样就完成了密码更改。您现在可以退出 MySQL 的命令提示符了。

示例1:为用户名为“dbuser”的用户设置密码为“newpass”:

mysql> ALTER USER 'dbuser'@'localhost' IDENTIFIED BY 'newpass';

示例2:为用户名为“testuser”的用户设置密码为“testpass”:

mysql> ALTER USER 'testuser'@'localhost' IDENTIFIED BY 'testpass';

希望以上解释能够帮助您解决“MySQL5.7.16修改密码提示ERROR1054(42S22):Unknowncolumn”password”in”fieldlist””的问题。