当前位置: 首页 > news >正文

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

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 用户设置一个强密码以保障数据库的安全。

http://www.dtcms.com/a/302446.html

相关文章:

  • 如何实现任务附件管理功能:ONLYOFFICE协作空间文件选择器集成指南
  • (LeetCode 面试经典 150 题 ) 155. 最小栈 (栈)
  • 【Oracle】数据泵
  • Rk3568-芯片内看门狗
  • Laravel 分页方案整理
  • Apache Kafka实时数据流处理实战指南
  • 稳定币催化下,Web3 支付赛道将迎来哪些爆发?
  • 在 Linux 上进行 Apache Bench 测试
  • Item18:让接口容易被正确使用,不易被误用
  • 修改gitlab默认的语言
  • 项目如何按时交付?重点关注的几点
  • 面试问题收集——卷积神经网络
  • 音频焦点 Android Audio Focus 进阶
  • MongoDB的内存和核心数对于运行效率的影响
  • mongodb源代码分析createCollection命令创建Collection流程分析
  • 未授权访问漏洞靶场(redis,MongoDB,Memcached...)
  • MongoDB占用内存情况分析
  • jimfs:Java内存文件系统,脱离磁盘IO瓶颈利器
  • Java强制转换
  • TDengine 中 TDgpt 用于异常检测
  • 【AI绘画】Stable Diffusion 全面指南:安装、版本对比、功能解析与高级应用
  • selenium 特殊场景处理
  • 技术工具箱 |五、一个避免头文件重复引用的 Python 脚本
  • 【Java基础面试题】Java特点,八种基本数据类型
  • 提取apk中的各种语言翻译成表格,python脚本
  • 【图像处理】霍夫变换:霍夫变换原理、霍夫空间、霍夫直线、霍夫圆详解与代码示例
  • 小智源码分析——音频部分(二)
  • java设计模式 -【责任链模式】
  • 2025 DevOps工具生态全景解读:本土化服务与智能化演进成关键赛点
  • 电商项目DevOps一体化运维实战