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

【Homebrew安装 MySQL 】macOS 用 Homebrew 安装 MySQL 完整教程

文章目录

  • 前言
    • 1. 教程前提与适用环境
    • 2. 步骤1:检查 Homebrew 与 MySQL 是否已安装
      • 2.1 检查 Homebrew 是否安装
        • 预期结果:
      • 2.2 检查是否已安装 MySQL
        • 预期结果:
    • 3. 步骤2:通过 Homebrew 安装 MySQL(含下载错误解决)
      • 3.1 执行安装命令
        • 可能遇到的问题:下载失败(如本文日志)
        • 解决方案:
      • 3.2 安装成功的标志
    • 4. 步骤3:启动 MySQL 服务并检查状态
      • 4.1 启动 MySQL 服务
        • 启动成功标志:
      • 4.2 检查服务状态
        • 预期结果:
    • 5. 步骤4:验证 MySQL 安装与登录测试
      • 5.1 验证 MySQL 版本
        • 预期结果:
      • 5.2 首次登录 MySQL(无密码)
        • 登录成功标志:
    • 6. 步骤5:MySQL 安全配置(必做)
      • 6.1 执行安全配置命令
      • 6.2 逐步配置安全选项
        • 配置成功标志:
    • 7. 常见问题与解决方案
      • 7.1 问题1:`mysql: command not found`
      • 7.2 问题2:启动服务失败(`status: error`)
      • 7.3 问题3:登录提示 `Access denied for user 'root'@'localhost'`
    • 8. 总结


前言

若对您有帮助的话,请点赞收藏加关注哦,您的关注是我持续创作的动力!有问题请私信或联系邮箱:funian.gm@gmail.com

1. 教程前提与适用环境

  • 适用系统:macOS(本文以 macOS 15.4 + Apple Silicon 芯片为例,Intel 芯片操作一致,仅路径略有差异)
  • 核心工具:Homebrew(macOS 包管理器,需提前安装)
  • MySQL 版本:本文安装最新稳定版(日志中为 9.4.0_3,Homebrew 会自动拉取最新版)
  • 解决痛点:避免官方安装包的路径配置麻烦,Homebrew 自动处理依赖、环境变量,新手友好

2. 步骤1:检查 Homebrew 与 MySQL 是否已安装

首先确认系统中是否有 Homebrew,以及是否已安装过 MySQL(避免重复安装冲突)。

2.1 检查 Homebrew 是否安装

打开「终端」(Launchpad → 其他 → 终端),执行以下命令:

brew --version
预期结果:
  • 若显示类似 Homebrew 4.6.10 则说明 Homebrew 已安装(如本文日志);
  • 若提示 command not found: brew,需先安装 Homebrew,执行:
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
    按提示输入系统密码,等待安装完成。
    在这里插入图片描述

2.2 检查是否已安装 MySQL

执行命令排查是否有旧版 MySQL:

brew list | grep mysql
预期结果:
  • 若终端无输出,说明未安装 MySQL(如本文日志),可继续下一步;
  • 若输出 mysqlmysql@xx,说明已安装,需先卸载(执行 brew uninstall mysql),避免冲突。

在这里插入图片描述

3. 步骤2:通过 Homebrew 安装 MySQL(含下载错误解决)

Homebrew 会自动下载 MySQL 及依赖(如 abseil、icu4c 等),无需手动处理。

3.1 执行安装命令

终端输入:

brew install mysql
可能遇到的问题:下载失败(如本文日志)

本文首次安装时出现 curl: (92) HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1),属于网络波动导致的下载中断。

解决方案:
  • 直接重新执行 brew install mysql(Homebrew 会自动续传已下载的依赖,无需从头下载);
  • 若多次失败,可先清理缓存再重试:
    brew cleanup  # 清理旧缓存(本文日志中安装后自动执行)
    brew install mysql
    

在这里插入图片描述

3.2 安装成功的标志

终端最终显示类似以下内容,代表安装完成:

==> Summary
🍺  /opt/homebrew/Cellar/mysql/9.4.0_3: 336 files, 293.5MB
==> Caveats
Upgrading from MySQL <8.4 to MySQL >9.0 requires running MySQL 8.4 first:
...
We've installed your MySQL database without a root password. To secure it run:mysql_secure_installation
...
To connect run:mysql -u root
  • 关键信息:无 root 密码(首次登录无需密码)、mysql_secure_installation(后续安全配置命令)。

在这里插入图片描述

4. 步骤3:启动 MySQL 服务并检查状态

MySQL 安装后不会自动启动,需手动启动服务(支持后台自启)。

4.1 启动 MySQL 服务

执行命令:

brew services start mysql
启动成功标志:

终端显示:

==> Successfully started `mysql` (label: homebrew.mxcl.mysql)

在这里插入图片描述

4.2 检查服务状态

确认服务是否正常运行,执行:

brew services list
预期结果:

终端显示 mysql 一行的 statusstarted,如下:

Name    Status  User       File
mysql   started funian     ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
  • 若 status 为 error,可尝试重启服务:brew services restart mysql

在这里插入图片描述

5. 步骤4:验证 MySQL 安装与登录测试

安装并启动服务后,验证 MySQL 是否可用,以及能否正常登录。

5.1 验证 MySQL 版本

执行命令查看安装的版本:

mysql --version
预期结果:

显示类似以下版本信息(本文日志结果):

mysql  Ver 9.4.0 for macos15.4 on arm64 (Homebrew)

在这里插入图片描述

5.2 首次登录 MySQL(无密码)

Homebrew 安装的 MySQL 默认无 root 密码,直接登录:

mysql -u root
登录成功标志:

终端进入 mysql> 命令行模式,显示:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 9.4.0 HomebrewCopyright (c) 2000, 2024, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>
  • 退出 MySQL 命令行:输入 exit; 并回车。

6. 步骤5:MySQL 安全配置(必做)

首次安装后无密码,存在安全风险,需通过官方工具 mysql_secure_installation 配置安全选项。

6.1 执行安全配置命令

在终端(非 MySQL 命令行)执行:

mysql_secure_installation

6.2 逐步配置安全选项

按终端提示依次选择,建议全部选 Y(安全最佳实践):

  1. 设置 root 密码

    • 提示 Would you like to setup VALIDATE PASSWORD component? → 输入 Y(密码强度验证);
    • 选择密码强度等级(0=低,1=中,2=高)→ 建议输入 1
    • 输入新密码(如 MySql123!,需符合强度要求)→ 确认密码;
    • 提示 Change the root password? → 输入 Y
  2. 删除匿名用户

    • 提示 Remove anonymous users? → 输入 Y(避免匿名登录漏洞)。
  3. 禁止 root 远程登录

    • 提示 Disallow root login remotely? → 输入 Y(仅允许本地登录,提升安全性)。
  4. 删除 test 数据库

    • 提示 Remove test database and access to it? → 输入 Y(test 库无实际用途,删除避免风险)。
  5. 刷新权限

    • 提示 Reload privilege tables now? → 输入 Y(使配置立即生效)。
配置成功标志:

终端显示 All done!,代表安全配置完成。

7. 常见问题与解决方案

7.1 问题1:mysql: command not found

  • 原因:Homebrew 路径未加入环境变量(罕见,Apple Silicon 路径为 /opt/homebrew/bin,Intel 为 /usr/local/bin);
  • 解决:执行以下命令添加环境变量,重启终端:
    # Apple Silicon 芯片
    echo 'export PATH="/opt/homebrew/bin:$PATH"' >> ~/.zshrc
    # Intel 芯片
    echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.zshrc
    # 生效配置
    source ~/.zshrc
    

7.2 问题2:启动服务失败(status: error

  • 原因:3306 端口被占用(如旧版 MySQL 未关闭);
  • 解决:查找并杀死占用端口的进程:
    # 查找占用 3306 端口的进程
    lsof -i:3306
    # 杀死进程(替换 PID 为上一步显示的进程号)
    kill -9 PID
    # 重启 MySQL 服务
    brew services restart mysql
    

7.3 问题3:登录提示 Access denied for user 'root'@'localhost'

  • 原因:忘记安全配置时设置的 root 密码;
  • 解决:重置 root 密码(参考MySQL 官方重置指南)。

8. 总结

本文通过 Homebrew 完成了 MySQL 的安装、启动、验证与安全配置,核心优势:

  1. 无需手动配置路径:Homebrew 自动管理环境变量;
  2. 依赖自动处理:无需手动安装 abseil、icu4c 等依赖;
  3. 服务管理便捷brew services 一键启动/停止/重启;
  4. 新手友好:避开官方安装包的复杂配置步骤。

后续可通过 mysql -u root -p 登录 MySQL(需输入安全配置时设置的密码),开始数据库操作。

http://www.dtcms.com/a/466114.html

相关文章:

  • 【图像处理基石】暗光增强算法入门:从原理到实战(Python+OpenCV)
  • Asp.net core Kestrel服务器详解
  • OpenFeign使用
  • 如何在鸿蒙中实现毫秒级数据检索?哈希表与二分查找的双引擎优化方案
  • 实现支持链式调用的 JavaScript 类
  • 中文wordpress模板免费seo教程分享
  • 如何用ps做网站顺德网站建设7starry
  • 京东agent之joyagent解读
  • 【第五章:计算机视觉-项目实战之生成式算法实战:扩散模型】3.生成式算法实战:扩散模型-(2)DDPM数据读取
  • UCC21530-Q1 隔离栅极驱动器完全解析:从原理到实战应用
  • 企业网站的网络营销功能wordpress 发视频
  • 创作纪念日
  • 直接找高校研究生做网站行吗公众号开发单位
  • 怎么看网站开发语言是哪种律所网站建设建议
  • Docker:公有仓库和私有仓库的搭建
  • 有专门做牙膏的网站吗网站footer设计
  • 零基础从头教学Linux(Day 47)
  • libevent输出缓存区的数据
  • 宋红康 JVM 笔记 Day18|class文件结构
  • 网站源代码购买荆州 网站建设
  • ws2_32.dll文件丢失或损坏怎么办?4种有效修复方案分享
  • Rust程序语言设计(5-8)
  • 三合一网站建设公司杭州科技公司排名
  • 温州建设监理协会网站录入客户信息的软件
  • 38.Shell脚本编程2
  • ETLCloud-重塑制造业数据处理新范式
  • 【JavaSE】JVM
  • 部分网站dns解析失败wordpress 图片预加载
  • django 网站开发案例公众号微信
  • 数据库进阶实战:从性能优化到分布式架构的核心突破