MySQL 单用户模式启动通常用于系统维护,比如重置 root 密码或修复权限问题。这种模式下,MySQL 服务以跳过权限验证的方式运行,仅允许一个管理员连接,不接受普通用户登录。
单用户模式启动方法
要以单用户模式启动 MySQL,需使用 mysqld 或 mysqld_safe 并添加特定参数:
停止当前 MySQL 服务:sudo systemctl stop mysql(Linux 系统常见命令) 使用以下命令之一启动单用户模式: sudo mysqld --skip-grant-tables --skip-networking &
说明:
--skip-grant-tables:跳过权限表验证,无需密码即可登录 --skip-networking:禁止网络连接,提高安全性,仅本地可访问 & 表示后台运行,避免占用终端如何登录并操作
启动成功后,直接执行:
mysql -u root此时无需密码即可进入 MySQL 命令行。你可以进行如下操作:
修改 root 用户密码(MySQL 8.0+ 示例):ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; 刷新权限:
FLUSH PRIVILEGES;
恢复正常运行
完成维护后,需正常重启 MySQL 服务:
先终止 mysqld 进程:sudo pkill mysqld 重新启动服务:
sudo systemctl start mysql
此时 MySQL 恢复正常权限控制,所有用户按配置登录。
基本上就这些。单用户模式很实用,但务必在操作后及时恢复,避免安全风险。
