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

MacOS 10.13下MySQL启动后自动停止及keyring_file缺失求助

解决MacOS 10.13下MySQL启动失败(keyring_file.so缺失)问题

一、修复MySQL启动问题

1. 临时跳过插件加载启动服务

找到MySQL配置文件(通常为/etc/my.cnf或/usr/local/mysql/my.cnf,无则新建),添加以下配置:

[mysqld]
early-plugin-load=

保存后重启MySQL服务,即可绕过keyring_file插件加载,让服务正常启动。

2. 手动补充缺失的插件文件

若需要保留密钥环功能,按以下步骤操作:

  • 执行mysql --version确认你的MySQL版本号
  • 获取对应版本的keyring_file.so文件,将其放到/usr/local/mysql/lib/plugin/目录
  • 设置文件权限:
sudo chown mysql:mysql /usr/local/mysql/lib/plugin/keyring_file.so
sudo chmod 755 /usr/local/mysql/lib/plugin/keyring_file.so

完成后重启MySQL服务。

3. 重新安装兼容版本的MySQL

若重新下载后仍缺失文件,大概率是安装包与MacOS 10.13不兼容:

  • 先彻底卸载现有MySQL:
sudo rm -rf /usr/local/mysql
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /var/db/receipts/com.mysql.*
  • 下载适配MacOS 10.13的MySQL版本(推荐5.7.x或8.0早期版本,高版本已停止支持旧系统),重新完成安装。

二、.sql转数据库的替代方案

若MySQL暂时无法修复,可使用以下工具完成.sql文件转数据库:

  • SQLite(轻量无服务):

    1. 创建SQLite数据库文件:
    sqlite3 target_db.db
    
    1. 在SQLite交互终端导入.sql文件:
    .read your_sql_file.sql
    

    注意:需手动调整.sql中MySQL特定语法,确保兼容SQLite。

  • Docker容器化MySQL:

    1. 启动兼容版本的MySQL容器:
    docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=your_pwd --name mysql_temp mysql:5.7
    
    1. 复制.sql文件到容器内:
    docker cp your_sql_file.sql mysql_temp:/tmp/
    
    1. 创建目标数据库并导入文件:
    docker exec -it mysql_temp mysql -uroot -pyour_pwd -e "CREATE DATABASE IF NOT EXISTS target_db;"
    docker exec -it mysql_temp mysql -uroot -pyour_pwd target_db < /tmp/your_sql_file.sql
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 10:44:57