这篇文章给大家介绍MySQL中怎么重置root密码,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

1. 前言

忘记你的MySQL root密码? 别担心,它发生在我们所有人身上。

在本教程中,我们将向您展示如何重置MySQL root密码,以防您忘记密码。 本教程适用于任何现代Linux发行版,如Ubuntu 18.04、CentOS 7、Debian等等。

2. 准备工作

在继续执行以下步骤之前,请确保以具有sudo权限的用户身份登录服务器。

根据您在系统上运行的MySQL或MariaDB服务器版本,您将需要使用不同的命令来恢复root密码。

你可以通过以下命令查到你的mysql版本:

[root@zcwyou~]#mysql--version

如果你的系统中已经安装了MySQL,输出将如下所示:

mysqlVer15.1Distrib5.5.60-MariaDB,forLinux(x86_64)usingreadline5.1

请务必记下您正在运行的MySQL或MariaDB版本。

3. 怎么重置MySQL或MariaDB的root密码

按以下教程步骤重置MySQL密码

要更改root密码,首先我们需要停止MySQL服务器。 为此,请键入以下命令:

sudosystemctlstopmysql

怎么重置MySQL或MariaDB的root密码

4. 略过grant授权表启动mysql/MariaDB服务

启用--skip-grant-tables选项后,任何人都可以在没有密码和所有权限的情况下连接到数据库服务器。

要启动数据库服务器而不加载grant授权表,请键入:

[root@zcwyou~]#mysqld_safe--skip-grant-tables&

上面命令末尾的&符号将导致程序在后台运行,因此我们可以继续使用shell。

5. 登录`mysql`命令行界面

现在,您可以以root用户身份连接到数据库服务器,而不会提示您输入密码:

[root@zcwyou~]#mysql-uroot

6. 重设mysql root密码

如果您有MySQL 5.7.6及更高版本或MariaDB 10.1.20及更高版本,请运行以下命令:

mysql>ALTERUSER'root'@'localhost'IDENTIFIEDBY'MY_NEW_PASSWORD';mysql>FLUSHPRIVILEGES;

如果ALTER USER语句不起作用,请尝试直接修改用户表:

mysql>UPDATEmysql.userSETauthentication_string=PASSWORD('MY_NEW_PASSWORD')mysql>WHEREUser='root'ANDHost='localhost';mysql>FLUSHPRIVILEGES;

如果您有MySQL 5.7.5及更早版本或MariaDB 10.1.20及更早版本,请运行以下命令:

mysql>SETPASSWORDFOR'root'@'localhost'=PASSWORD('MY_NEW_PASSWORD');mysql>FLUSHPRIVILEGES;

在这两种情况下,如果一切顺利,您应该看到以下输出:

QueryOK,0rowsaffected(0.00sec)

7. 停止Mysql数据库和重新启动正常模式

现在,我们已经重置了Mysql 数据库的密码,我们需要重新启动到正常模式

使用以下命令停止数据库运行:

[root@zcwyou~]#mysqladmin-uroot-pshutdown

启动mysql数据库:

[root@zcwyou~]#systemctlstartmysql

启动MariaDB数据库

[root@zcwyou~]#systemctlstartmariadb

8. 验证新密码

输入以下命令,验证刚刚设置的新密码:

[root@zcwyou~]#mysql-uroot-p

提示你需要输入刚刚设置的新密码,如无意外,你应该可以正常登录到数据库中。

关于MySQL中怎么重置root密码就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。