mysql忘了密码怎么办
时间 : 2023-06-01 06:35:01声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

如果你忘记了 MySQL 的 root 密码,可以按照以下步骤进行找回:

1. 停止 MySQL 服务

使用以下命令停止 MySQL 服务:

sudo systemctl stop mysql

如果你使用的是旧版操作系统,可以使用以下命令:

sudo /etc/init.d/mysql stop

2. 启动 MySQL 服务

使用以下命令在没有密码保护的情况下启动 MySQL 服务:

sudo mysqld_safe --skip-grant-tables &

3. 登录 MySQL

使用以下命令登录 MySQL:

mysql -u root

现在你已经以没有密码的 root 用户身份登录到了 MySQL。

4. 重设密码

输入以下命令重设 MySQL 的 root 密码:

use mysql;

update user set authentication_string=password('NEWPASSWORD') where user='root';

flush privileges;

quit;

将 `NEWPASSWORD` 替换为你想要设置的新密码。

5. 重新启动 MySQL 服务

使用以下命令重新启动 MySQL 服务:

sudo systemctl start mysql

如果你使用的是旧版操作系统,可以使用以下命令:

sudo /etc/init.d/mysql start

现在你可以使用新密码登录 MySQL 了。

需要注意的是,如果你在生产环境下使用这种方法来重设 MySQL 密码,建议在完成后删除 `mysqld_safe` 的进程。否则,任何人都可以以没有密码的 root 用户身份登录到你的服务器上。

如果你在使用 MySQL 时遇到了忘记密码的问题,不用太担心,因为我们可以通过以下步骤来重置 MySQL 密码。

步骤一:停止 MySQL 服务

如果你的 MySQL 在本地安装,可以在命令行中输入以下命令来停止 MySQL 服务器:

sudo systemctl stop mysqld

步骤二:使用跳过权限表的方式启动 MySQL

在启动 MySQL 的时候,我们需要使用 --skip-grant-tables 参数来跳过权限验证:

sudo mysqld_safe --skip-grant-tables &

这里的 & 表示让后台运行该进程。

步骤三:连接到 MySQL

通过以下命令来连接到 MySQL:

mysql -u root

如果一切正常,你应该能够登录到 MySQL。

步骤四:更新密码

输入以下命令来更新 MySQL 用户的密码:

UPDATE mysql.user SET authentication_string=PASSWORD('你的新密码') WHERE User='root';

这里的‘你的新密码’是你要设置的新密码。

步骤五:刷新权限表并退出

接下来,我们需要刷新权限表以保存更改,并退出 MySQL:

FLUSH PRIVILEGES;

exit;

步骤六:重启 MySQL 服务

最后,我们需要重启 MySQL 服务以使更改生效:

sudo systemctl start mysqld

现在,你应该能够使用你的新密码连接 MySQL 了。

总结:通过以上几个步骤,我们可以忘记 MySQL 密码后重置密码。需要注意的是,不要在生产环境中随意跳过权限验证,这会导致非常严重的安全问题。