Ubuntu24安装MariaDB/MySQL后不知道root密码如何解决

发布于:2025-07-29 ⋅ 阅读:(16) ⋅ 点赞:(0)

Ubuntu 24.04 安装 MariaDB 后 root 密码未知?解决方案在此

在 Ubuntu 24.04 上新安装 MariaDB 后,许多用户会发现自己不知道 root 用户的密码,甚至在安装过程中也没有提示设置密码。这是因为在较新的 MariaDB 版本中,默认情况下 root 用户采用了 unix_socket 身份验证插件。这意味着您可以使用操作系统的 root 用户权限直接登录 MariaDB,而无需输入密码。

本文将为您详细解释如何解决这个问题,并为您提供设置新密码的多种方法。

方法一:使用 mysql_secure_installation 脚本 (推荐)

这是最推荐、最安全且最简单的方法。mysql_secure_installation 是一个随 MariaDB 一同安装的脚本,旨在帮助用户进行基本的安全设置,包括设置 root 密码。

步骤如下:

  1. 以 root 用户权限运行脚本:

    打开终端,输入以下命令:

    sudo mysql_secure_installation
  2. 切换到密码验证:

    脚本会首先询问您是否想切换到 unix_socket 身份验证之外的方式。为了能使用密码登录,请输入 Y 并按回车。

  3. 设置新密码:

    接下来,系统会提示您为 MariaDB 的 root 用户设置新密码。输入您想要设置的强密码并再次输入以确认。

  4. 完成安全设置:

    脚本还会询问您是否要移除匿名用户、禁止 root 用户远程登录、移除测试数据库等。出于安全考虑,建议对这些选项都选择 Y (是)。

完成以上步骤后,您的 MariaDB root 用户就已经设置了新密码。您现在可以使用以下命令通过密码登录:

sudo mysql -u root -p

然后输入您刚刚设置的密码即可。

方法二:手动更改 root 用户密码

如果您不想运行 mysql_secure_installation 脚本,也可以手动更改 root 用户的密码。

步骤如下:

  1. 以 root 权限登录 MariaDB:

    由于默认使用 unix_socket 认证,您可以直接使用 sudo 命令免密登录。

    sudo mysql -u root
  2. 更改 root 用户的认证方式和密码:

    进入 MariaDB 命令行后,执行以下 SQL 语句来更改 root 用户的认证插件为 mysql_native_password 并设置新密码。请将 YourStrongPasswordHere 替换为您自己的强密码。

    ALTER USER 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('YourStrongPasswordHere');
  3. 刷新权限:

    为了使更改立即生效,需要刷新权限。

    FLUSH PRIVILEGES;
  4. 退出并测试:

    输入 EXIT; 退出 MariaDB 命令行。现在,您应该可以使用新设置的密码登录了。

    sudo mysql -u root -p

方法三:当无法登录时重置 root 密码

在极少数情况下,如果您已经更改了密码但忘记了,或者上述方法因某种原因无法奏效,您可以通过以下步骤重置 root 密码。

步骤如下:

  1. 停止 MariaDB 服务:

    sudo systemctl stop mariadb
  2. 以安全模式启动 MariaDB (跳过授权表):

    sudo mysqld_safe --skip-grant-tables &

    此命令会在后台以不检查权限的方式启动 MariaDB。

  3. 免密登录 MariaDB:

    sudo mysql -u root
  4. 重置密码:

    进入 MariaDB 命令行后,执行以下命令来设置新密码。同样,请将 YourNewStrongPasswordHere 替换为您自己的强密码。

    FLUSH PRIVILEGES;
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewStrongPasswordHere';
  5. 正常重启 MariaDB:

    首先,停止以安全模式运行的 MariaDB 进程。您可能需要使用 kill 命令。

    sudo killall mysqld_safe
    sudo killall mysqld

    然后,正常启动 MariaDB 服务。

    sudo systemctl start mariadb

现在,您应该可以使用新重置的密码登录 MariaDB 了。

总结

对于 Ubuntu 24.04 上新安装的 MariaDB,root 用户默认使用 unix_socket 认证,允许通过 sudo 免密登录。通过 mysql_secure_installation 脚本设置密码是最推荐的方法。如果需要,也可以手动更改或在忘记密码时进行重置。我们强烈建议您为 root 用户设置一个强密码以保障数据库的安全。


网站公告

今日签到

点亮在社区的每一天
去签到