升级macOS Catalina后MAMP Pro无法启动MySQL的问题求助
解决macOS Catalina升级后MAMP Pro无法启动MySQL的问题
我之前升级到Catalina后也碰到过一模一样的MySQL启动失败问题,折腾了好一阵才搞定,给你分享下我亲测有效的解决步骤:
核心问题分析
从你的错误日志里能看到关键报错:
Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
这是因为Catalina的安全机制限制了root用户直接运行MySQL服务,我们需要让MySQL以非root的专用用户(默认是mysql)启动。
具体解决步骤
方法一:通过MAMP Pro图形界面修改(推荐)
- 先彻底关闭MAMP Pro的所有服务,最好打开「活动监视器」搜索
mysqld,确保相关进程都已结束。 - 重新打开MAMP Pro,点击左侧导航栏的「MySQL」选项卡。
- 在「General」设置区域找到「Run MySQL as」的下拉选项,选择
mysql用户(不要选root)。 - 保存设置后,重新启动MySQL服务,应该就能正常运行了。
方法二:手动修改启动脚本(如果界面选项找不到)
如果你的MAMP Pro版本里没有上述界面选项,可以直接修改MySQL的启动脚本:
- 打开终端,执行命令编辑
mysqld_safe文件:sudo nano /Applications/MAMP/Library/bin/mysqld_safe - 找到启动
mysqld的那一行(通常是文件末尾附近的exec命令),在参数里加上--user=mysql,修改后的行类似:exec $MYSQLD_BASEDIR/bin/mysqld --defaults-file=$MYSQL_OPTS --user=mysql $@ - 按
Ctrl+O保存,回车确认,再按Ctrl+X退出编辑器。 - 重启MAMP Pro的MySQL服务。
额外权限修复(如果仍报错)
有时候系统升级会导致MySQL数据目录的权限混乱,执行以下命令修复:
sudo chown -R mysql:mysql /Library/Application\ Support/appsolute/MAMP\ PRO/db/mysql57
这条命令会把MySQL数据目录的所有权和所属组都改成mysql用户,避免权限被拒绝的问题。
内容的提问来源于stack exchange,提问作者John Doe Smith
相关产品推荐
相关产品推荐

