如何设置mysql初始化密码_mysql初始化密码配置方法

3次阅读

首先查看日志获取临时密码,或使用 mysql_secure_installation 脚本设置;若无临时密码可添加 skip-grant-tables 跳过验证修改密码,之后务必删除该配置并重启服务。

如何设置 mysql 初始化密码_mysql 初始化密码配置方法

MySQL 安装完成后,设置初始密码是保障数据库安全的重要一步。不同版本的 MySQL(尤其是 5.7 及以上)在初始化时会自动生成临时密码,也可以通过配置跳过验证并手动设置。以下是几种常见的 MySQL 初始化密码设置方法。

查看默认生成的临时密码

在某些 Linux 发行版中(如通过 yum 或 apt 安装),MySQL 会在首次启动时自动生成一个临时密码:

  • 查看日志文件:临时密码通常记录在 MySQL 的错误日志中,路径一般为 /var/log/mysqld.log(CentOS/RHEL)或 /var/log/mysql/error.log(Ubuntu/Debian)。
  • 执行命令查找:sudo grep ‘temporary password‘ /var/log/mysqld.log
  • 使用该密码登录 MySQL:mysql -u root -p,然后输入查到的临时密码。

手动初始化并设置密码

若未生成临时密码,或你是从压缩包方式安装,可手动初始化:

  • 编辑 配置文件 my.cnf(通常位于 /etc/my.cnf 或 /etc/mysql/my.cnf),在 [mysqld] 段添加:
    skip-grant-tables(跳过 权限验证
  • 重启 MySQL 服务:systemctl restart mysqld
  • 无需密码登录:mysql -u root
  • 更新 root 用户密码(MySQL 5.7+ 使用 authentication_string 字段):

ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘ 你的强密码 ’;
FLUSH PRIVILEGES;

修改完成后,务必删除 my.cnf 中的 skip-grant-tables 并重启服务,否则存在安全风险。

使用 mysql_secure_installation 工具

MySQL 提供了安全初始化脚本,可批量完成密码设置和其他安全配置:

  • 运行命令:mysql_secure_installation
  • 根据提示设置 root 密码、移除匿名用户、禁止远程 root 登录、删除测试数据库等。
  • 此方式推荐用于生产环境初始化。

初始化时指定密码(MySQL 8.0+ 推荐方式)

使用 mysqld –initialize 命令初始化数据目录时,系统会生成临时密码:

  • 执行:mysqld –initialize –user=mysql –basedir=/usr –datadir=/var/lib/mysql
  • 检查日志获取临时密码,然后登录并修改。
  • 也可使用 –initialize-insecure 参数初始化无密码(仅限内网测试环境)。

基本上就这些。关键是根据安装方式选择合适的密码设置流程,优先使用临时密码或安全脚本,避免长期使用免密登录。

星耀云
版权声明:本站原创文章,由 星耀云 2026-01-07发表,共计1194字。
转载说明:转载本网站任何内容,请按照转载方式正确书写本站原文地址。本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。
text=ZqhQzanResources