ubuntu命令行登录mysql密码_如何重设MySQL根密码(适用于Ubuntu、CentOS、Debian)

在本文中,我们将向您展示如何从命令行重置MySQL root密码。本指南中的说明应适用于任何现代Linux发行版,例如Ubuntu 18.04,Debian 10和CentOS 8。

识别服务器版本

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

您可以通过发出以下命令来找到服务器版本:

mysql --version

如果您的系统中安装了MySQL,则输出将如下所示:

mysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper

或对于MariaDB这样的输出:

mysql Ver 15.1 Distrib 10.1.33-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

确保记下您正在运行的MySQL或MariaDB版本。

如何重置MySQL或MariaDB根密码

请按照以下步骤重置您的MySQL / MariaDB根密码:

1.停止MySQL / MariaDB服务

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

sudo systemctl stop mysql

2.启动MySQL / MariaDB服务器而不加载授权表

在不加载授权表的情况下启动数据库服务器:

sudo mysqld_safe --skip-grant-tables &

&上面命令末尾的&符号将使程序在后台运行,因此您可以继续使用该外壳程序。

使用该--skip-grant-tables选项时,任何人都可以连接到数据库服务器而无需输入密码并授予所有特权。

3.登录到MySQL Shell

现在,您可以以root用户身份连接到数据库服务器:

mysql -u root

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

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MY_NEW_PASSWORD';

FLUSH PRIVILEGES;

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

UPDATE mysql.user SET authentication_string = PASSWORD('MY_NEW_PASSWORD')

WHERE User = 'root' AND Host = 'localhost';

FLUSH PRIVILEGES;

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

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MY_NEW_PASSWORD');

FLUSH PRIVILEGES;

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

Query OK, 0 rows affected (0.00 sec)

5.正常停止并启动数据库服务器

现在已经设置了root密码,请停止数据库服务器并正常启动它:

mysqladmin -u root -p shutdown

系统将提示您输入新的root密码。

正常启动数据库服务器:

对于MySQL,输入:

sudo systemctl start mysql

对于MariaDB,输入:

sudo systemctl start mariadb​

6.验证密码

要验证新的根密码是否已正确应用,请键入:

mysql -u root -p

系统将提示您输入新的root密码。输入它,您应该登录到数据库服务器。

结论

我们已经向您展示了如何重置MySQL / MariaDB根密码。确保新的root密码安全可靠,并将其保存在安全的地方。本指南中的说明应适用于任何现代Linux发行版,例如Ubuntu 18.04,Debian 10和CentOS 8。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值