导读:本期聚焦于小伙伴创作的《mysql首次安装后如何设置密码?mysql安全初始化步骤说明》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《mysql首次安装后如何设置密码?mysql安全初始化步骤说明》有用,将其分享出去将是对创作者最好的鼓励。

mysql作为常用的关系型数据库,首次安装后默认不设置root用户密码,且存在匿名用户、允许root远程登录等默认配置,这些都会带来安全隐患。完成首次安装后,第一时间进行安全初始化和密码设置是十分必要的操作。

mysql安全初始化工具说明

mysql官方提供了mysql_secure_installation工具,专门用于完成首次安装后的安全配置,该工具会引导用户逐步完成密码设置、安全项配置等操作,适用于大多数mysql安装场景。

首次安装设置密码的完整步骤

步骤1:启动mysql服务

首先确保mysql服务已经正常启动,不同系统的启动命令略有差异,以下是常见系统的启动命令示例:

# CentOS/RHEL系统
systemctl start mysqld

# Ubuntu/Debian系统
systemctl start mysql

# 查看服务状态确认启动成功
systemctl status mysqld

步骤2:运行安全初始化工具

在终端执行mysql_secure_installation命令,启动初始化流程,执行后会依次出现如下配置提示:

# 执行初始化命令
mysql_secure_installation

步骤3:配置密码相关选项

执行命令后首先会提示是否安装密码强度校验组件,输入Y确认安装,后续会要求设置root用户密码,输入两次一致的密码即可:

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?

Press y|Y for Yes, any other key for No: Y

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file

Please enter 0 = LOW, 1 = MEDIUM, 2 = STRONG: 1
Please set the password for root here.

New password:

Re-enter new password:

步骤4:完成其他安全配置

密码设置完成后,工具会继续提示其他安全配置项,建议全部输入Y确认:

  • 删除匿名用户:避免未授权用户直接登录数据库
  • 禁止root用户远程登录:仅允许本地登录root账户,降低远程攻击风险
  • 删除test测试数据库:测试数据库默认所有用户都有权限,存在安全风险
  • 重新加载权限表:让上述配置立即生效

手动设置密码的替代方法

如果不想使用安全初始化工具,也可以先空密码登录mysql后手动修改root密码,步骤如下:

# 空密码登录mysql
mysql -u root -p
# 直接回车跳过密码输入

# 切换到mysql系统库
USE mysql;

# 修改root用户密码,mysql 5.7及以上版本使用如下语句
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';

# mysql 5.6及以下版本使用如下语句
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('你的新密码');

# 刷新权限使配置生效
FLUSH PRIVILEGES;

常见问题说明

密码设置后无法登录

如果出现密码正确但无法登录的情况,可能是密码强度不符合要求,或者修改密码后未执行FLUSH PRIVILEGES刷新权限,重新执行刷新命令即可。

忘记首次设置的密码

如果忘记了首次设置的root密码,可以通过跳过权限表的方式重置密码,步骤如下:

# 停止mysql服务
systemctl stop mysqld

# 跳过权限表启动mysql
mysqld_safe --skip-grant-tables &

# 无密码登录mysql
mysql -u root

# 修改密码
USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
FLUSH PRIVILEGES;

# 重启mysql服务
systemctl restart mysqld

安全初始化后的验证

完成所有配置后,可以尝试用新设置的密码登录mysql,验证配置是否生效:

# 使用新密码登录
mysql -u root -p
# 输入刚才设置的密码,登录成功则说明配置完成

mysql安全初始化mysql_set_password数据库配置修改时间:2026-06-11 10:45:51

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。