You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac OS X 10.11.6无法启动MySQL:_clock_gettime符号缺失求助

解决MySQL 5.7.21在Mac OS X 10.11.6启动时的dyld: lazy symbol binding failed: Symbol not found: _clock_gettime错误

这个问题的根源很明确——你装错MySQL版本了!你用的是针对Mac OS X 10.13编译的mysql-5.7.21-1-macos10.13-x86_64.dmg,但你的系统是10.11.6,而_clock_gettime这个系统函数是从Mac OS X 10.12才开始加入的,10.11根本没有这个符号,自然会启动失败。

下面是一步步的解决办法:

1. 彻底卸载当前的MySQL 5.7.21

先把不合适的版本清干净:

  • 先停掉可能在运行的MySQL服务:
    sudo launchctl unload /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist
    
  • 删除MySQL相关的核心文件和配置:
    sudo rm -rf /usr/local/mysql
    sudo rm -rf /Library/PreferencePanes/MySQL*
    sudo rm -rf /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist
    
  • 打开你的~/.bash_profile,把之前加的/usr/local/mysql/bin路径删掉,然后执行下面的命令让修改生效:
    source ~/.bash_profile
    

2. 下载适配Mac OS X 10.11的MySQL版本

找MySQL归档页面里支持10.11的5.7版本,比如mysql-5.7.20-1-macos10.11-x86_64.dmg——这个版本是专门为10.11编译的,完美兼容你的系统。

3. 重新安装并配置

  • 运行下载好的dmg安装包,跟着向导一步步完成安装,记得保存好初始的root密码(如果有)。
  • 重新编辑~/.bash_profile,把MySQL的bin目录加入PATH:
    echo 'export PATH=/usr/local/mysql/bin:$PATH' >> ~/.bash_profile
    source ~/.bash_profile
    

4. 测试启动

现在再试你之前的命令:

mysqld start --skip-grant-tables

或者用系统服务方式启动:

sudo launchctl load /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

这次应该能正常启动了。

小提醒

以后下载MySQL安装包的时候,一定要仔细看文件名里的系统版本标识,别再下错适配更高版本系统的包啦!

内容的提问来源于stack exchange,提问作者Jingwei Li

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:28:10