在 macOS 15.x 上安装 MySQL 8.4.x(ARM64 版)完整教程
MySQL 8.4 是 MySQL 的最新稳定版本,针对 macOS 15.x(Apple Silicon 芯片)进行了优化。本文将详细介绍如何在 macOS 15.x 上手动安装 MySQL 8.4.x(.tar.gz
版本),包括初始化、配置、启动、重置密码等完整流程。
📥 1. 下载 MySQL 8.4(ARM64 版)
直接访问 MySQL 官方下载页面 选择:
- 版本:MySQL Community Server 8.4.x
- 操作系统:macOS
- 架构:ARM 64-bit(Apple Silicon)
- 包格式:
mysql-8.4.5-macos15-arm64.tar.gz
也可以按图中从mysql官方网站进入依次选择downloads
- GPL版本
选择Community
版本
根据你的需求选择对应版本
直接下载,不登录
下载后,解压到目标目录(如 /Applications/EServer/childApp/server/mysql-8.4
):
tar -xzvf mysql-8.4.5-macos15-arm64.tar.gz -C /Applications/EServer/childApp/server/
mv /Applications/EServer/childApp/server/mysql-8.4.5-macos15-arm64 /Applications/EServer/childApp/server/mysql-8.4
⚙️ 2. 配置 MySQL
📂 创建数据目录和日志目录
mkdir -p /Applications/EServer/database/mysql-8.4-data
mkdir -p /Applications/EServer/childApp/server/mysql-8.4/logs
chmod -R 755 /Applications/EServer/database/mysql-8.4-data
📝 创建 my.cnf
配置文件
在 /Applications/EServer/etc/mysql-8.4/my.cnf
写入以下内容(按需调整):
[client]
port = 3306
socket = /Applications/EServer/database/mysql-8.4-data/mysql84.sock
[mysql]
no-auto-rehash
default-character-set = utf8mb4
[mysqld]
socket = /Applications/EServer/database/mysql-8.4-data/mysql84.sock
basedir = /Applications/EServer/childApp/server/mysql-8.4
datadir = /Applications/EServer/database/mysql-8.4-data
pid-file = /Applications/EServer/database/mysql-8.4-data/mysql84.pid
port = 3306
server_id = 1
character-set-server = utf8mb4
sql_mode = "NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE"
# 安全与认证
mysql_native_password = on
explicit_defaults_for_timestamp = on
skip-mysqlx
# 缓存与性能
table_open_cache = 64
key_buffer_size = 16M
innodb_buffer_pool_size = 128M
innodb_redo_log_capacity = 64M # 替代旧版 innodb_log_file_size
# 日志
log_timestamps = SYSTEM
log-error = /Applications/EServer/childApp/server/mysql-8.4/logs/mysql.log
# 连接设置
max_connections = 300
max_allowed_packet = 16M
thread_cache_size = 4
table_definition_cache = 400
# 其他优化
lower_case_table_names = 2
performance_schema = 0
innodb_flush_method = O_DIRECT
innodb_file_per_table = 1
🚀 3. 初始化 MySQL
cd /Applications/EServer/childApp/server/mysql-8.4/bin
# 安全初始化(生成随机密码)
./mysqld --defaults-file=/Applications/EServer/etc/mysql-8.4/my.cnf --initialize --user=`whoami`
# 或空密码初始化(仅测试环境)
# ./mysqld --defaults-file=/Applications/EServer/etc/mysql-8.4/my.cnf --initialize-insecure --user=`whoami`
📌 注意:
- 若使用
--initialize
,密码会出现在日志文件/Applications/EServer/childApp/server/mysql-8.4/logs/mysql.log
(查找A temporary password is generated for root@localhost: XXXXXXXX
)。 - 若使用
--initialize-insecure
,root 密码为空(需后续手动设置)。
🔌 4. 启动 MySQL
./mysqld --defaults-file=/Applications/EServer/etc/mysql-8.4/my.cnf &
验证是否运行:
ps aux | grep mysqld
🔑 5. 设置/重置 MySQL Root 密码
✅ 情况 1:知道当前密码
./mysql -u root -p --socket=/Applications/EServer/database/mysql-8.4-data/mysql84.sock
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
FLUSH PRIVILEGES;
🆘 情况 2:忘记密码(强制重置)
停止 MySQL
kill -9 $(pgrep mysqld)
以无验证模式启动
./mysqld --defaults-file=/Applications/EServer/etc/mysql-8.4/my.cnf --skip-grant-tables --skip-networking &
登录并修改密码
./mysql -u root --socket=/Applications/EServer/database/mysql-8.4-data/mysql84.sock
FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; EXIT;
重启 MySQL
kill -9 $(pgrep mysqld) ./mysqld --defaults-file=/Applications/EServer/etc/mysql-8.4/my.cnf &
🔧 6. 设置 MySQL 开机自启(可选)
sudo cp /Applications/EServer/childApp/server/mysql-8.4/support-files/mysql.server /Library/LaunchDaemons/com.mysql.mysqld.plist
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist
🎯 7. 验证安装
./mysql -u root -p --socket=/Applications/EServer/database/mysql-8.4-data/mysql84.sock
SHOW DATABASES; -- 查看数据库列表
SELECT VERSION(); -- 查看 MySQL 版本
版权声明:本文为原创文章,版权归 全栈开发技术博客 所有。
本文链接:https://www.lvtao.net/database/macos15-install-mysql8-4-arm64-tutorial.html
转载时须注明出处及本声明