如何重置MySQL或者MariaDB root密码

时间:2020-03-21 11:47:34  来源:igfitidea点击:

如何在UNIX的操作系统中重置MySQL或者MariaDB root密码。

重置MySQL或者MariaDB root密码

首先,停止数据库服务器。

如果使用MySQL,请键入以下命令并按Enter键。

$sudo systemctl stop mysql

对于MariaDB:

$sudo systemctl stop mariadb

接下来,使用以下命令重新启动数据库服务器而无权检查:

$sudo mysqld_safe --skip-grant-tables &

其中"--skip-grant-tables"选项允许我们在没有密码和所有权限的情况下连接。
如果使用此选项启动服务器,它还支持"--Skip-networking"选项,该选项用于防止其他客户端连接到数据库服务器。
而且,Ampersand(&)符号用于在后台运行命令,因此我们可以在以下步骤中键入其他命令。
请注意上述命令是危险的,数据库服务器变得不安全。
我们应该仅在短时间内运行此命令以重置密码。

接下来,以root用户身份登录MySQL/MariaDB服务器:

$mysql

在MySQL>或者MariaDB [(无)]>提示符下,运行以下命令以重置root用户密码:

UPDATE mysql.user SET Password=PASSWORD('theitroad') WHERE User='root';

用自己的密码替换在上面的命令中的onitad。

然后,键入以下命令以退出MySQL控制台。

FLUSH PRIVILEGES;
exit

最后,关闭与"--skip-grant-tables"选项之前开始的运行数据库服务器。
为此,运行:

$sudo mysqladmin -u root -p shutdown

我们将被要求输入我们在上一步中设置的MySQL/MariaDB root用户密码。

Enter password: 
[2]- Done sudo mysqld_safe --skip-grant-tables

现在,正常使用命令启动MySQL/MariaDB服务:

$sudo systemctl start mysql

对于MariaDB:

$sudo systemctl start mariadb

验证使用以下命令是否真的更改了密码:

$sudo mysql -u root -p