当前位置: 首页 > article >正文

Mac电脑上本地安装 MySQL并配置开启自启完整流程

文章目录

    • 一、mysql安装
      • 1.1 使用 Homebrew 安装(推荐)
      • 1.2 手动下载 MySQL 社区版
      • 1.3 常见问题
      • 1.4 图形化管理工具(可选)
    • 二、Mac 上配置 MySQL 开机自动启动
      • 2.1 使用 `launchd` 系统服务(原生支持)
      • 2.2 通过 Homebrew 设置开机启动(推荐)
      • 2.3 常见问题

在 Mac 电脑上本地安装 MySQL 的步骤如下:

一、mysql安装

1.1 使用 Homebrew 安装(推荐)

  1. 安装 Homebrew(如果尚未安装):

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. 安装 MySQL

    brew install mysql
    
  3. 启动 MySQL 服务

    brew services start mysql
    
  4. 运行安全配置向导(设置 root 密码等):

    mysql_secure_installation
    
    • 按照提示操作,建议设置 root 密码并启用安全选项。
  5. 验证安装

    mysql -u root -p
    

    输入密码后,成功进入 MySQL 命令行即表示安装完成。


1.2 手动下载 MySQL 社区版

  1. 下载安装包

    • 访问 MySQL 官网下载页面。
    • 选择 macOS 版本(推荐下载 .dmg 格式的安装包)。
  2. 安装 MySQL

    • 双击下载的 .dmg 文件。
    • 运行其中的 .pkg 安装程序,按向导完成安装。
  3. 配置 MySQL

    • 安装完成后,在系统偏好设置中找到 MySQL,点击启动服务。
    • 或在终端运行:
      sudo /usr/local/mysql/support-files/mysql.server start
      
  4. 设置环境变量(可选):
    将 MySQL 添加到 PATH 中,方便命令行访问:

    echo 'export PATH="/usr/local/mysql/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
    

    (如果使用 Bash,将 .zshrc 替换为 .bash_profile

  5. 登录 MySQL

    mysql -u root -p
    

    初始密码通常在安装结束时显示,或保存在 /usr/local/mysql/data/mysql-error.log 中。


1.3 常见问题

  1. 忘记 root 密码

    • 停止 MySQL 服务:
      brew services stop mysql  # 或 sudo /usr/local/mysql/support-files/mysql.server stop
      
    • 启动安全模式:
      sudo mysqld_safe --skip-grant-tables
      
    • 另开终端登录并重置密码:
      mysql -u root
      
      FLUSH PRIVILEGES;
      ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
      EXIT;
      
  2. 无法启动服务

    • 检查错误日志:/usr/local/mysql/data/*.err
    • 可能是权限问题,尝试:
      sudo chown -R _mysql:mysql /usr/local/mysql/data
      

1.4 图形化管理工具(可选)

  • MySQL Workbench:官方可视化工具,支持查询和管理。
  • Sequel Ace:轻量级开源客户端(下载地址)。

完成后,你就可以在本地开发中使用 MySQL 了!

二、Mac 上配置 MySQL 开机自动启动

2.1 使用 launchd 系统服务(原生支持)

Mac 使用 launchd 管理系统服务,MySQL 安装后通常会自动创建 .plist 文件。以下是手动配置步骤:

1. 确认 MySQL 安装路径

which mysqld

通常路径为 /usr/local/mysql/bin/mysqld(通过官方 .dmg 安装)或 /opt/homebrew/bin/mysqld(通过 Homebrew 安装)。

2. 创建或检查 .plist 文件
MySQL 官方安装包通常会自动生成:

ls /Library/LaunchDaemons/com.mysql.mysql.plist

如果不存在,手动创建:

sudo nano /Library/LaunchDaemons/com.mysql.mysqld.plist

写入以下内容(根据实际路径调整):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict><key>Label</key><string>com.mysql.mysqld</string><key>ProgramArguments</key><array><string>/usr/local/mysql/bin/mysqld_safe</string><string>--user=mysql</string></array><key>RunAtLoad</key><true/><key>KeepAlive</key><true/><key>WorkingDirectory</key><string>/usr/local/mysql</string>
</dict>
</plist>

3. 加载服务并设置权限

sudo chown root:wheel /Library/LaunchDaemons/com.mysql.mysqld.plist
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist

4. 验证是否生效

sudo launchctl list | grep mysql

重启 Mac 后检查 MySQL 是否自动运行:

mysql -u root -p -e "STATUS;"

2.2 通过 Homebrew 设置开机启动(推荐)

如果通过 Homebrew 安装 MySQL,直接使用 brew services 管理:

1. 启动并设置开机自启

brew services start mysql

2. 验证状态

brew services list

输出应包含:

mysql started ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

3. 取消开机启动

brew services stop mysql

2.3 常见问题

  1. 路径错误
    如果报错 mysqld_safe: command not found,检查路径是否正确:

    sudo nano /Library/LaunchDaemons/com.mysql.mysqld.plist
    

    将路径改为实际路径(如 /opt/homebrew/bin/mysqld_safe)。

  2. 权限问题
    确保数据目录权限正确:

    sudo chown -R _mysql:mysql /usr/local/mysql/data
    
  3. 手动启动/停止

    • 启动:
      sudo /usr/local/mysql/support-files/mysql.server start
      
    • 停止:
      sudo /usr/local/mysql/support-files/mysql.server stop
      

通过以上任一方法配置后,MySQL 会在 Mac 启动时自动运行。推荐使用 Homebrew 管理,更简洁高效。

http://www.lryc.cn/news/2396589.html

相关文章:

  • JavaSE:面向对象进阶之内部类(Inner Class)
  • 【HW系列】—安全设备介绍(开源蜜罐的安装以及使用指南)
  • 汽车总线分析总结(CAN、LIN、FlexRay、MOST、车载以太网)
  • MyBatisPlus--条件构造器及自定义SQL详解
  • OVD开放词汇检测 Detic 训练COCO数据集实践
  • docker、ctr、crictl命令简介与使用
  • WEB安全--SQL注入--bypass技巧2
  • 【强化学习哲学 Day 1】Q-Learning - 在不确定中寻找确定
  • WEB3——什么是ABI
  • 嵌入式软件--stm32 DAY 8.5 基础复习总结
  • MMRL: Multi-Modal Representation Learning for Vision-Language Models(多模态表示学习)
  • 贪心算法求解汽车加油问题
  • JVM Full GC 频繁问题排查、优化及解决方案
  • rsync服务的搭建
  • JDK21深度解密 Day 8:Spring Boot 3与虚拟线程整合
  • vscode 配置 QtCreat Cmake项目
  • 排序算法-归并排序与快速排序
  • HTML实现端午节主题网站:龙舟争渡,凭吊祭江诵君赋。
  • uniapp uni-id 如果是正式项目,需自行实现发送邮件的相关功能
  • Spring boot 策略模式
  • websocket在vue中的使用步骤,以及实现聊天
  • C++学习-入门到精通【12】文件处理
  • 第十一篇:MySQL 在分布式系统中的一致性保障与中间件实践
  • Java中如何枚举正则表达式捕获组的名字
  • matlab实现图像压缩编码
  • 如何排查Redis单个Key命中率骤降?
  • 记一次 Starrocks be 内存异常宕机
  • Spring Boot 读取.env文件获取配置
  • LangChain-结合GLM+SQL+函数调用实现数据库查询(一)
  • python训练营打卡第41天