Mac环境下Flask应用配套MariaDB启动失败问题求助
解决Mac上mysql.server启动MariaDB时log_success_msg找不到的问题
问题原因
log_success_msg是Linux系统初始化脚本(init.d)里的专用函数,brew打包的MariaDB的mysql.server脚本未完全适配Mac环境,导致调用这个不存在的函数报错。但实际上MariaDB daemon已经成功启动,这也是你能通过mariadb -u root -p正常登录的原因。
解决办法
方法1:改用brew services管理(推荐)
brew自带的services命令是Mac上管理后台服务的标准方式,完全适配Mac环境,不会出现这类兼容性问题:
- 启动MariaDB:
brew services start mariadb - 停止MariaDB:
brew services stop mariadb - 重启MariaDB:
brew services restart mariadb
可通过brew services list查看当前服务状态,确认mariadb是否在运行。
方法2:修复mysql.server脚本
如果坚持要使用mysql.server命令,可以手动修改脚本里的函数调用:
- 打开
mysql.server脚本文件:nano /opt/homebrew/bin/mysql.server - 找到报错的第261行(或所有包含
log_success_msg、log_failure_msg的行),把这些函数替换成echo命令。比如将:
修改为:log_success_msg "MariaDB server started"echo "MariaDB server started" - 保存退出后,再运行
mysql.server start就不会再报错了。
内容的提问来源于stack exchange,提问作者bioinfo
相关产品推荐
相关产品推荐

