MySQL 如何重置 MySQL root 密码
MySQL 是一种广泛使用的关系型数据库管理系统,是许多互联网和企业应用程序的首选。有时,管理员或 DBA 可能因为某些原因而忘记或丢失 MySQL root 用户的密码。本篇文章将提供重置 MySQL root 密码的几种方法。
阅读更多:MySQL 教程
方法一:使用 mysqladmin
mysqladmin 工具是 MySQL 安装包自带的一个全局命令行客户端,可以用于管理 MySQL 服务器。可以使用以下步骤重置 MySQL root 密码:
- 首先,停止 MySQL 服务:
- 使用以下命令启动 MySQL 服务,使用跳过权限验证的方式:
- 用以下命令使用 mysqladmin 来重置 MySQL root 密码:
注意:将 “NewPassword” 替换为您想要设置为 root 用户密码的新密码。
-
停止 MySQL 服务:
- 现在,您可以使用以下命令以正常方式启动 MySQL 服务:
现在,您可以使用 “NewPassword” 作为 MySQL root 用户的新密码进行身份验证。
方法二:使用 mysqld_safe
如果您无法使用 mysqladmin 工具,则可以尝试使用 mysqld_safe 命令重置 MySQL root 密码。
- 首先,停止 MySQL 服务:
- 使用以下命令启动 mysqld_safe:
- 在不关闭上一个终端窗口的情况下,打开一个新的终端窗口。使用以下命令以身份验证方式连接到 MySQL 服务器:
注意:此时不需要提供密码。
-
然后,使用以下命令在 MySQL 服务器上更改 root 用户的密码:
注意:将 “NewPassword” 替换为您想要设置为 root 用户密码的新密码。
5.现在,关闭上一个终端窗口,停止 mysqld_safe:
```mysql
sudo kill $(sudo cat /var/run/mysqld/mysqld.pid)
```
- 使用以下命令以正常方式启动 MySQL 服务:
方法三:使用 init-file
第三种方法是使用 init-file 选项。init-file 允许您在 MySQL 启动时运行 SQL 语句。以下是使用 init-file 重置 MySQL root 密码的步骤:
- 首先,将以下语句存储在文件中(例如 /tmp/reset.sql):
注意:将 “NewPassword” 替换为您想要设置为 root 用户密码的新密码。
-
然后,停止 MySQL 服务:
- 使用以下命令启动 MySQL 服务,使用 init-file 选项来运行 /tmp/reset.sql 文件:
- 目前,您可以使用以下命令以正常方式启动 MySQL 服务:
现在,您可以使用 “NewPassword” 作为 MySQL root 用户的新密码进行身份验证。
总结
在管理 MySQL 数据库时,忘记 root 用户密码是一个相当常见的问题。本文介绍了三种可行的方法来重置 MySQL root 密码。第一种方法使用已安装的 mysqladmin 工具,第二种方法使用 mysqld_safe 命令,而第三种方法使用 init-file 选项。它们都需要一些基本的命令行技能,但是对于具有这种技能的管理员来说,这些方法应该都很简单易懂。无论使用哪种方法,我们都可以指望在遇到这个问题时不会惊慌,因为有了这些方法,我们可以很快恢复 root 用户密码,并恢复对数据库的完全访问。