所谓“安全模式”是通过特定参数启动MySQL进行维护。使用mysqld_safe配合--skip-grant-tables和--skip-networking可跳过权限验证并禁用网络连接,便于密码重置或故障排查;登录后可修改密码、修复数据;操作完成后需终止该进程并正常重启服务,恢复权限控制,避免安全隐患。

MySQL 中并没有一个叫做“安全模式”的开关,但通常所说的“启用安全模式启动”指的是以一种受限的方式启动 MySQL 服务,限制某些功能以防止误操作,比如禁止远程连接、跳过权限表验证、不加载插件等。这种模式常用于故障排查或密码重置。
1. 使用 mysqld_safe 启动并跳过权限检查
这是最常见的“安全模式”用法,适用于忘记 root 密码或需要临时绕过权限系统的情况:
- 停止当前 MySQL 服务:
sudo systemctl stop mysql - 以跳过权限表的方式启动:
sudo mysqld_safe --skip-grant-tables --skip-networking &
说明:
--skip-grant-tables:跳过权限验证,所有用户无需密码即可登录,但只能执行有限操作(如修改密码)。
--skip-networking:禁止 TCP/IP 连接,只允许本地 socket 连接,提升安全性。
2. 登录并重置密码或修复数据
在上述方式启动后,可以直接登录:
mysql -u root此时无需密码。可以进行以下操作:
发卡宝是一个专业的软件卡密等虚拟商品在线交易平台,拥有多种兑换方式,费率低,结算快,正规企业平台一直稳定运营,24小时不间断提供自动发卡服务。【模板说明】试用版自带一套模板(响应式)【环境支持】PHP环境 / 200M或以上空间大小 / 开启父路径 / 设置index.php为默认首页 / 目录写入权限需要开启【数据库】MySQL【安装步骤】将文件上传至空间目录,运行“http://域名/inst
- 刷新权限表:
FLUSH PRIVILEGES; - 修改 root 用户密码(MySQL 8.0+):
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; - 修复表或导出数据
3. 正常重启 MySQL 服务
完成维护后,必须正常重启服务以恢复权限控制:
- 先关闭 mysqld_safe 进程:
sudo pkill mysqld_safe - 重新启动 MySQL:
sudo systemctl start mysql
此时 MySQL 恢复正常运行,所有安全限制解除。
基本上就这些。所谓的“安全模式”其实是通过特定参数临时改变 MySQL 的启动行为,便于维护。操作完成后务必恢复正常启动,避免留下安全漏洞。









