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

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.xdnf.cn/news/10372.html

相关文章:

  • 历史数据分析——广州港
  • 计算机网络(5)——数据链路层
  • 【数据结构】图的存储(十字链表)
  • 微调大模型:什么时候该做,什么时候不该做?
  • 鸿蒙OS基于UniApp的WebRTC视频会议系统实践:从0到1的HarmonyOS适配之路#三方框架 #Uniapp
  • 【火山引擎 大模型批量处理数据教程-详细】
  • 基于千帆大模型的AI体检报告解读系统实战:使用OSS与PDFBox实现PDF内容识别
  • WEBSTORM前端 —— 第3章:移动 Web —— 第3节:移动适配
  • Rust 学习笔记:发布一个 crate 到 crates.io
  • Python 序列的修改、散列和切 片(Vector类第5版:格式化)
  • qwen3解读
  • Java BigInteger类详解与应用
  • C语言之编译器集合
  • 蓝桥杯java2021年十二届国赛大学A组真题答案整理
  • 基于Sqoop的MySQL-Hive全量/增量同步解决方案(支持多表批量处理
  • 设计模式——单例设计模式(创建型)
  • 131. 分割回文串-两种回溯思路
  • C++手撕 shared_ptr
  • Paimon 建表常用属性分析
  • simulink mask的使用技巧
  • Windows下编译zlib
  • LangGraph 快速入门
  • Ubuntu设置之初始化
  • 利用Dify创建一个公司产品知识问答
  • DeepSeek部署实战:常见问题与高效解决方案全解析
  • 【Java基础05】面向对象01
  • leetcode动态规划—买卖股票系列
  • Python案例解析 : 函数模块化编程的实践应用
  • CTFHub-RCE 命令注入-过滤目录分隔符
  • 解决8080端口被占问题