MySql教程
MySql用户管理
MySQL数据库
MySql表格和视图
MySQL查询
MySQL索引
MySQL子句
MySQL授权
MySql控制流
MySQL条件
MySQL连接
MySQL键
MySQL触发器
MySQL聚合函数
MySQL常用
MySQL正则表达式
MySql差异性

MySQL 更改密码

MySQL用户是一条记录,其中包含登录信息,帐户特权以及MySQL帐户访问和管理数据库的主机信息。登录信息包括用户名和密码。在某些情况下,需要更改MySQL数据库中的用户密码。
要更改任何用户帐户的密码,必须记住以下信息:
您要更改的用户帐户的详细信息。 用户要更改其密码的应用程序。如果您在不更改应用程序连接字符串的情况下重置了用户帐户密码,则该应用程序将无法与数据库服务器连接。
MySQL 允许我们以三种不同的方式更改用户帐户密码,如下所示:
UPDATE语句 设置密码语句 ALTER USER语句
让我们看看如何通过使用上面的详细说明来更改MySQL中的用户帐户密码:
使用UPDATE更改用户帐户密码语句
此语句是更改用于更新MySQL数据库用户表的用户密码的第一种方法。在这里,在执行UPDATE语句以从MySQL数据库的授权表中重新加载特权后,必须使用 FLUSH PRIVILEGE 语句。
假设您要更改或更新用户 peter 的密码,该用户从本地主机连接到密码 jtp12345 ,然后执行 SQL 语句如下:
mysql> USE mysql;
 
mysql> UPDATE user SET password = PASSWORD('jtp12345') WHERE user = 'peter' AND host = 'localhost';
 
mysql> FLUSH PRIVILEGES;
如果您使用的是 MySQL版本 5.7.6 或更高版本,请使用上述版本声明将不起作用。这是因为MySQL用户表包含 authentication_string 列,该列仅存储密码。现在,更高版本的UPDATE语句中包含了authentication_string列,就像下面的语句一样。
mysql> USE mysql;
 
mysql> UPDATE user SET authentication_string = PASSWORD('jtp12345') WHERE user = 'peter' AND host = 'localhost';
 
mysql> FLUSH PRIVILEGES;
使用SET PASSWORD语句更改用户帐户密码
SET PASSWORD语句是更改MySQL数据库中用户密码的第二种方法。如果要更改其他帐户密码,则必须具有UPDATE特权。 SET PASSWORD语句使用 username @ localhost 格式的用户帐户。
无需使用FLUSH PRIVILEGES语句从MySQL数据库的授权表中重新加载特权。我们可以使用以下语句通过使用SET PASSWORD语句来更改用户帐户peter的密码:
mysql> SET PASSWORD for 'peter'@'localhost' = PASSWORD('jtp12345');
如果使用的是MySQL 5.7.6或更高版本,则不建议使用上述语句,并且在以后的版本中将不起作用。相反,我们需要使用以下语句:
mysql> SET PASSWORD for 'peter'@'localhost' = jtp12345;
使用ALTER USER语句更改用户帐户密码
ALTER USER语句是更改MySQL数据库中用户密码的第三种方法。 MySQL使用带有IDENTIFIED BY子句的ALTER USER语句来更改用户帐户的密码。我们需要使用以下语法通过 jtp123 更改用户 peter 的密码。
mysql> ALTER USER peter@localhost IDENTIFIED BY 'jtp123';
有时,您需要重置MySQL root 帐户密码。在这种情况下,您可以强制停止并重新启动MySQL数据库服务器,而无需使用授权表验证。

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4