MySQL离线安装需在匹配的操作系统(如CentOS、Ubuntu等)上准备依赖库(libaio、openssl等)、创建mysql用户与数据目录、配置文件系统权限,并正确处理SELinux和防火墙规则,确保安装包完整性和环境兼容性。

MySQL离线安装通常用于无法连接外网的服务器环境,因此需要提前准备好所有依赖包和安装文件。整个过程对系统环境有一定要求,配置不当可能导致安装失败或服务无法启动。以下是MySQL离线安装所需环境的详细说明。
操作系统版本支持
MySQL官方支持多种Linux发行版,常见支持的操作系统包括:
- CentOS 7 / 8 / Stream
- Red Hat Enterprise Linux (RHEL) 7 / 8
- Ubuntu 18.04 / 20.04 / 22.04 LTS
- SUSE Linux Enterprise Server 15+
建议使用主流稳定版本,避免使用已停止维护的系统。不同MySQL版本对操作系统的内核和glibc版本有最低要求,例如MySQL 8.0 需要 glibc 2.28 或更高版本。
依赖库与运行环境
离线安装时,必须手动解决所有依赖问题。常见的依赖库包括:
- libaio:MySQL InnoDB存储引擎依赖此异步I/O库
- ncurses:命令行客户端显示依赖
- openssl:加密连接(SSL/TLS)支持
- numactl:在多CPU架构下优化内存分配
- zlib 和 lz4:压缩功能支持
可使用yum provides */libxxx.so或ldd mysql-bin检查缺失的动态库。对于Ubuntu/Debian系统,需准备对应的.deb依赖包。
用户与文件系统配置
安装前需创建专用运行账户和目录权限:
- 创建mysql用户:
useradd -r -s /sbin/nologin mysql - 准备数据目录,如
/var/lib/mysql,并设置属主:chown -R mysql:mysql /var/lib/mysql - 确保磁盘空间充足,建议预留至少2GB用于安装和初始数据
- 文件系统推荐使用ext4或xfs,避免使用NTFS或FAT等非原生Linux格式
安装包准备
根据系统选择合适的离线安装包:
- CentOS/RHEL:下载
mysql-8.0.x-linux-glibc2.12-x86_64.tar.xz或使用RPM Bundle包(包含多个rpm) - Ubuntu/Debian:下载完整的
mysql-server_8.0.x_amd64.deb-bundle.tar - 也可使用官方YUM/APT仓库打包工具(如yumdownloader或apt-offline)导出完整依赖包集合
建议从MySQL官网下载对应平台的离线包,并校验MD5或SHA256防止文件损坏。
SELinux与防火墙配置
为避免权限拦截,需调整安全策略:
- 临时关闭SELinux:
setenforce 0,或配置正确上下文:semanage fcontext -a -t mysqld_etc_t "/path/to/my.cnf" - 开放3306端口:
firewall-cmd --permanent --add-port=3306/tcp(Firewalld) - 或使用iptables添加规则允许数据库访问
基本上就这些。只要系统版本匹配、依赖齐全、权限配置正确,MySQL离线安装就能顺利进行。










