在 Linux 服务器上安装 MySQL 8.0,系统需满足以下核心要求(以主流发行版如 Ubuntu、CentOS/RHEL 为例):
1. 操作系统兼容性
MySQL 8.0 官方支持以下 Linux 发行版(具体版本可能随时间更新,建议查阅 MySQL 官方文档):
- Ubuntu:20.04 LTS、22.04 LTS(推荐),部分支持 18.04 LTS(但非长期支持版本,不推荐生产环境)
- RHEL/CentOS/Fedora:
- RHEL 8 / CentOS Stream 8 / Rocky Linux 8 / AlmaLinux 8
- RHEL 9 / Fedora 36+
⚠️ 注意:CentOS 7 已停止维护,MySQL 8.0 不再提供官方 RPM 包支持;若必须使用 CentOS 7,需通过源码编译或第三方源(如 Percona),但存在兼容性与安全风险。
- Debian:11 (Bullseye)、12 (Bookworm)
2. 硬件资源
| 项目 | 最低要求 | 推荐配置(生产环境) |
|---|---|---|
| CPU | 单核 x86_64 / ARM64 | ≥2 核,主频 ≥2.0 GHz |
| 内存 | 512 MB | ≥2 GB(小型应用);≥4–8 GB(中大型业务) |
| 磁盘空间 | ≥256 MB(仅软件本身) | ≥10 GB(含数据目录、日志、备份预留) • SSD 强烈推荐用于数据文件与 redo log |
| 文件系统 | ext4、XFS(推荐) | ext4/XFS(启用 noatime 优化);避免使用 NFS 作为数据目录 |
💡 提示:MySQL 8.0 默认启用 InnoDB,对 I/O 和内存较敏感。
innodb_buffer_pool_size通常设为物理内存的 50%–70%。
3. 内核与依赖库
- 内核版本:建议 ≥ 3.10(CentOS 7 默认 3.10 可运行,但某些特性受限);现代发行版默认满足。
-
必需软件包(以 yum/dnf/apt 为例):
# CentOS/RHEL/Fedora sudo dnf install libaio ncurses-compat-libs openssl-devel cmake # Ubuntu/Debian sudo apt install libaio1 libncurses5 libssl-dev cmake注:从 APT/YUM 官方仓库安装时,依赖通常会自动解决;源码编译则需手动安装上述工具链。
4. 用户与权限
- 创建专用系统用户运行 MySQL(安全最佳实践):
sudo useradd -r -s /bin/false mysql - 确保
/var/lib/mysql等目录归属正确:sudo chown -R mysql:mysql /var/lib/mysql sudo chmod 750 /var/lib/mysql
5. 其他注意事项
- SELinux / AppArmor:需配置策略允许 MySQL 访问必要端口(3306)和路径。
- 防火墙:开放 TCP 3306(仅限内网或受控 IP)。
- 字符集:默认
utf8mb4,无需额外配置即可支持完整 Unicode。 - 密码策略:MySQL 8.0 默认启用
validate_password插件,强制强密码规则(可通过my.cnf调整)。
✅ 快速验证清单:
# 检查架构
uname -m # 应为 x86_64 或 aarch64
# 检查内存
free -h # 可用内存 ≥1GB 更稳妥
# 检查磁盘
df -h /tmp # 临时空间充足(编译/解压需要)
# 检查内核
uname -r # ≥ 3.10
如需具体某发行版的安装步骤(如 Ubuntu 22.04 + APT 源 / CentOS 8 + YUM 源),我可提供详细命令流程。
CLOUD云枢