< 返回

Linux下忘记sql密码的解决方法

2024-10-15 18:02 作者:xiao gang 阅读量:261

如果你在Linux下忘记了MySQL或MariaDB的数据库密码,可以按照以下步骤重置密码:

1. 停止MySQL/MariaDB服务

首先,你需要停止MySQL或MariaDB服务。可以使用以下命令:

sudo systemctl stop mysql

sudo systemctl stop mariadb

2. 启动MySQL/MariaDB在安全模式下

接下来,以安全模式启动数据库,这样你可以不需要密码登录。

sudo mysqld_safe --skip-grant-tables &

这里的--skip-grant-tables选项允许你在没有权限检查的情况下访问数据库。

3. 连接到MySQL/MariaDB

在安全模式下,连接到MySQL/MariaDB:

mysql -u root

4. 更改用户密码

在MySQL/MariaDB提示符下,执行以下命令以改变用户的密码。假设你要重置的是root用户的密码:

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

如果你使用的是MySQL 5.7版本或更早版本,可以使用下面的命令:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('新密码');

5. 退出MySQL/MariaDB

输入以下命令以退出MySQL/MariaDB:

EXIT;

6. 重启MySQL/MariaDB服务

现在,你需要停止安全模式的MySQL/MariaDB,并重新启动服务:

sudo systemctl stop mysql

sudo systemctl stop mariadb

然后,重新启动MySQL/MariaDB服务:

sudo systemctl start mysql

sudo systemctl start mariadb

7. 测试新密码

最后,使用新密码登录MySQL/MariaDB以确认密码已成功重置:

mysql -u root -p

系统会提示你输入新密码,输入后即可登录。

注意事项

  • 确保在进行操作时有足够的权限(通常需要root权限)。

  • 在生产环境中,尽量避免使用--skip-grant-tables,因为它会使数据库处于不安全状态。

  • 重置密码时,请务必选择一个强密码。

以上就是在Linux下重置MySQL或MariaDB密码的步骤。如果在执行过程中遇到任何问题,请根据错误信息进行相应的调整。

联系我们
返回顶部