在 macOS 上使用 Homebrew 安装 MySQL 8.0 完整指南

在 macOS 上使用 Homebrew 安装 MySQL 8.0 完整指南

最近需要在 Mac 上搭建新的开发环境,曾经使用手动方式安装5.7,这次选择使用 Homebrew 来安装 MySQL 8.0。整个过程比想象中顺利。

安装前准备

确保你的系统已经安装了 Homebrew。如果还没有安装,可以在终端执行:

关于 Homebrew 内容查看:

我如何停止在 Mac 上手动安装软件(你也应该如此)https://blog.csdn.net/liang_shao_7/article/details/153739682?ops_request_misc=%257B%2522request%255Fid%2522%253A%252205ada451398d43fddf9ca5d6ec037c17%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=05ada451398d43fddf9ca5d6ec037c17&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-3-153739682-null-null.nonecase&utm_term=homebrew&spm=1018.2226.3001.4450

复制代码
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装步骤

安装 MySQL 8.0

执行以下命令安装 MySQL 8.0:

复制代码
brew install mysql@8.0

安装过程会自动下载并配置 MySQL,通常需要几分钟时间。Homebrew 会自动处理环境变量配置,安装完成后可以直接使用 mysql 命令!告别手动配置。

Install MySQL8.0

启动 MySQL 服务

启动 MySQL 服务有两种方式:

方式一:立即启动(不开机自启)

复制代码
brew services start mysql@8.0

方式二:手动启动

复制代码
mysql.server start

安全配置

在使用前,首先要执行 MySQL 的安全配置脚本,配置密码等信息

复制代码
mysql_secure_installation

这个脚本会引导你完成以下配置:

  • 设置 root 密码

  • 移除匿名用户

  • 禁止 root 远程登录

  • 删除测试数据库

  • 重新载入权限表

建议全部选择 "Yes" 来提高安全性。

验证安装

登录 MySQL

复制代码
mysql -u root -p

输入刚才设置的密码即可登录。

可选:配置图形化界面使用:DataGrip

这部分不是安装的核心,这里简单演示一下:

Use DataGrip config

Test DataGrip

常用命令

服务管理

复制代码
# 启动服务
brew services start mysql@8.0

# 停止服务
brew services stop mysql@8.0

# 重启服务
brew services restart mysql@8.0

# 查看服务状态
brew services list

连接 MySQL

复制代码
# 使用 root 用户连接
mysql -u root -p

# 连接到指定数据库
mysql -u root -p database_name

# 指定主机和端口
mysql -h localhost -P 3306 -u root -p

补充:使用 Homebrew 安装,如何卸载 MySQL

如果需要卸载:

复制代码
# 停止服务
brew services stop mysql@8.0

# 卸载
brew uninstall mysql@8.0

# 删除数据(可选)
rm -rf /opt/homebrew/var/mysql

总结

使用 Homebrew 安装 MySQL 8.0 非常简便,整个过程只需要几个命令就能完成。Homebrew 会自动处理依赖关系和配置,比手动安装要省心很多。安装完成后记得做好安全配置,就可以开始愉快地使用 MySQL 了。

欢迎点赞评论收藏!希望这篇教程对你有帮助!如果遇到其他问题,欢迎在评论区交流。

相关推荐
jyOverQ5 分钟前
MySQL 索引为什么能加快查询?B+Tree 到底是什么?
数据库·mysql
天天进步201519 分钟前
Pixelle-Video 源码解析 #17:TTS 语音生成:Edge-TTS、Index-TTS 如何接入?
前端·数据库
鸽芷咕19 分钟前
异构数据同步,凭什么敢说数据不丢?——拆解金仓KFS的全周期一致性校验
数据库
海浪仙人掌21 分钟前
账龄分析的定义是什么?账龄分析有什么作用?
数据库
ACP广源盛1392462567322 分钟前
M6/M5 Pro Mac mini 端侧 AI 落地@ACP#IX6024 PCIe2.0 交换芯片在轻量化 AI 服务中的机会与应用场景
大数据·数据库·人工智能·嵌入式硬件·macos·开源
ly768928 分钟前
深入解析 MySQL 间隙锁:从加锁规则到死锁案例
数据库·mysql·死锁·间隙锁·next-key lock·事务隔离
LRL_28 分钟前
7x24小时不停机:基于 Apache SeaTunnel 实现 Oracle to Oracle 实时 CDC 同步全实战
数据库·oracle·apache
不剪发的Tony老师29 分钟前
Navop:一款工具搞定数据库、SSH、SFTP、远程桌面、AI Agent
运维·数据库·ssh
程序员-Benothing36 分钟前
MySQL 中 DELETE、DROP 和 TRUNCATE 的区别是什么?
数据库·mysql
lhldsg40 分钟前
幼儿托管系统开发实战指南:从需求分析到架构设计全流程解析
数据库·数据仓库·需求分析