在Debian/Ubuntu上,重置MySQL root密码

・3 分钟阅读

如果你忘记了root密码,可以按照本文中的步骤重新设置,流程非常简单,可以在这些操作系统上运行:

  • 16.04
  • 18.04
  • Debian 8
  • Debian 9

确定数据库

下面的表格会告诉你,默认情况下操作系统存储库中有哪些数据库软件可用。


| Operating System | MySQL/MariaDB |
| ---------------------- | --------------- |
| Ubuntu 16.04 | MariaDB |
| Ubuntu 18.04 | MariaDB |
| Debian 8 | MySQL |
| Debian 9 | MySQL |

如果你仍然不确定已安装的数据库软件,请执行以下命令:

 
mysql -V

 

如果你看到 mysql Ver xxx Distrib x.x.x-MariaDB 例如你正在运行MariaDB ,否则,你正在运行MySQL 。

如果你安装了MySQL,请按照下面的指南重新设置密码,如果已安装MariaDB,请滚动到"重置MariaDB密码"部分。

重置你的MySQL密码

首先,我们必须停止mysql服务,并且授予密码较少的访问权限:


service mysql stop
mysqld_safe --skip-grant-tables &

一旦mysql服务停止,我们现在可以通过执行以下命令连接到数据库服务器:


mysql -u root mysql

现在,将以下内容输入到SQL终端中:


UPDATE user SET password=PASSWORD('YOUR_NEW_PASSWORD') WHERE user='root';
FLUSH PRIVILEGES;

现在,可以将以下内容输入到SQL终端中:

 
exit

 

你现在可以重新启动mysql服务:


service mysql restart

重置MariaDB密码

由于MariaDB(基本上)是相同的软件,因此命令类似。与前一节一样,我们需要停止mariadb进程,并且在继续之前授予密码较少的访问权限:


service mariadb stop
mysqld_safe --skip-grant-tables &

现在,我们可以连接到数据库服务器:


mysql -u root mysql

当你看到SQL终端后,输入以下内容:


UPDATE user SET password=PASSWORD('YOUR_NEW_PASSWORD') WHERE user='root';
FLUSH PRIVILEGES;

退出并重新启动MariaDB :


exit
service mariadb restart

结束语

恭喜你,现在已经成功地重设了你的mysql/MariaDB服务器密码。

Huangzhongbang profile image