Homebrew MySQL启动崩溃:未更新PID文件且变量不被支持
解决Homebrew部署的MySQL 9.0.1启动失败问题
问题根源
MySQL 9.0版本已彻底移除default_authentication_plugin系统变量(该变量在8.0.34起被标记为弃用),你的my.cnf配置中仍保留此参数,导致启动时触发unknown variable错误,进而无法生成PID文件,后续执行mysql.server stop自然找不到PID文件。
修复步骤
修改MySQL配置文件
- 先确认
my.cnf路径:执行mysql --help | grep "Default options",输出中会显示配置文件的加载顺序,优先修改Homebrew对应的配置(通常是/opt/homebrew/etc/my.cnf)。 - 打开配置文件,找到包含
default_authentication_plugin=mysql_native_password的行,用#注释掉或直接删除该行。 - 保存并关闭文件。
- 先确认
清理无效PID文件
执行命令删除报错中提到的PID文件:rm -f /opt/homebrew/var/mysql/MacBookPro.pid重新启动MySQL
执行启动命令:mysql.server start此时应该能正常启动,启动成功后PID文件会自动生成。
兼容旧用户认证方式(可选)
如果之前有依赖mysql_native_password认证的用户,登录MySQL后可单独为这些用户设置认证插件:ALTER USER 'your_username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password'; FLUSH PRIVILEGES;
内容的提问来源于stack exchange,提问作者archetypezero
相关产品推荐
相关产品推荐

