位置:首页 > SQL > MySQL修改root密码的方法与步骤

MySQL修改root密码的方法与步骤

时间:2026-08-17  |  作者:星际追番人  |  阅读:0

在 MySQL 里,root 属于权限最高的一类账户,能做的事情很多。因此,root 密码的安全绝不能掉以轻心。

root 密码的修改方式不少。下面将几种常见且实用的方法梳理清楚。

使用mysqladmin命令在命令行指定新密码

root 用户可以直接通过 mysqladmin 命令修改密码,操作起来很直观。mysqladmin 的语法格式如下:

mysqladmin -u username -h hostname -p password "newpwd"

MySQL修改root密码

语法参数说明如下:

  • usermame 指需要修改密码的用户名称,在这里指定为 root 用户;
  • hostname 指需要修改密码的用户主机名,该参数可以不写,默认是 localhost;
  • password 为关键字,而不是指旧密码;
  • newpwd 为新设置的密码,必须用双引号括起来。如果使用单引号会引发错误,可能会造成修改后的密码不是你想要的。

执行完上面的语句,root 用户的密码将被修改为“newpwd”

示例 1

下面使用 mysqladmin 将 root 用户的密码修改为“rootpwd”。在 Windows 命令行窗口(cmd)中执行命令和运行结果如下:

C:Usersleovo>mysqladmin -u root -p password "rootpwd"
Enter password: ****
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

输入 mysqladmin 命令后,按回车键,然后输入 root 用户原来的密码。执行完毕后,密码修改成功。

之后,root 用户登录时将使用新的密码。

运行结果中,输入密码后会提示在命令行界面上使用密码可能不安全的警告信息。

这是因为在命令行输入密码时,MySQL 服务器就会提示这些安全警告信息。

下面使用修改后的“rootpwd”密码登录 root 用户,SQL 语句和运行结果如下:

C:Usersleovo>mysql -uroot -p
Enter password: *******
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 23
Server version: 5.7.29-log MySQL Community Server (GPL)

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

结果显示,root 用户登录成功。

这说明使用 mysqladmin 命令修改 root 用户密码成功。

修改MySQL数据库的user表

因为所有账户信息都保存在 user 表中,因此可以直接通过修改 user 表来改变 root 用户的密码。

root 用户登录到 MySQL 服务器后,可以使用 UPDATE 语句修改 MySQL 数据库的 user 表的 authentication_string 字段,从而修改用户的密码。

使用 UPDATA 语句修改 root 用户密码的语法格式如下:

UPDATE mysql.user set authentication_string = PASSWORD ("rootpwd) WHERE User = "root" and Host="localhost";

新密码必须使用 PASSWORD() 函数来加密。

执行UPDATE语句后,需要执行FLUSH PRIVILEGES语句重新加载用户权限。

示例 2

下面使用 UPDATE 语句将 root用户的密码修改为“rootpwd2”。

使用 root 用户登录到 MySQL 服务器后,SQL 语句和运行结果如下所示:

mysql> UPDATE mysql.user set authentication_string = password ("rootpwd2")
    -> WHERE User = "root" and Host = "localhost";
Query OK, 1 row affected, 0 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings:0
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.06 sec)

结果显示,密码修改成功。

而且使用了FLUSH PRIVILEGES;语句加载权限。

退出后就必须使用新密码来登录了。

使用SET语句修改root用户的密码

SET PASSWORD 语句可以用来重新设置其他用户的登录密码,或者自己使用的账户的密码。

使用 SET 语句修改密码的语法结构如下:

SET PASSWORD = PASSWORD ("rootpwd");

示例 3

下面使用 SET 语句将 root 用户的密码修改为“rootpwd3”。

使用 root 用户登录到 MySQL 服务器后,SQL 语句和运行结果如下所示:

MySQL> SET PASSWORD = password ("rootpwd3");
Query OK, 0 rows affected (0.00 sec)

结果显示,SET 语句执行成功。

root 用户的密码被成功设置为“rootpwd3”。

免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。

相关文章

更多

精选合集

更多

大家都在玩

热门话题

大家都在看

更多