讲师中心 微信公众号
AI工具推荐 视频效率加速

如何在离线隔离网环境中分发并安装MySQL 8.0依赖包?

陌敏吖_2360

陌敏吖_2360

发布时间:2026-10-17 11:35:21

|

680人浏览过

|

来源于php中文网

原创

必须在同版本同架构联网机上模拟安装并下载全部依赖,否则离线安装MySQL 8.0会因缺失libaio、openssl-libs等十多个依赖及隐式版本约束而失败;RPM需按common→libs→client→server顺序安装,Debian系须构建本地APT源;还需同步导入GPG密钥以防签名验证失败。

如何在离线隔离网环境中分发并安装mysql 8.0依赖包?

必须先在同版本、同架构的联网机器上完整模拟安装流程,否则离线环境里 rpm -ivh 或 dpkg -i 会因依赖顺序或版本错位直接失败。

为什么不能直接拷贝单个 MySQL RPM 包过去装

MySQL 8.0 的 RPM 包(如 mysql-community-server-8.0.34-1.el8.x86_64.rpm)不自带运行时依赖。它明确依赖 libaio、numactl-libs、openssl-libs、perl-Data-Dumper 等十多个基础包。这些包在离线系统里大概率缺失,且部分依赖还有隐式版本约束(比如 libaio1_0.3.112-5 在 Ubuntu 20.04 上才稳定,用 0.3.111 可能导致 mysqld 启动后立即崩溃)。

常见错误现象:

  • error: Failed dependencies: libaio >= 0.3.99 is needed by mysql-community-server-8.0.34-1.el8.x86_64
  • symbol lookup error: /usr/sbin/mysqld: undefined symbol: OPENSSL_sk_num(实际是 openssl-libs 版本太低)

在联网机上用 dnf/yum 模拟下载全部依赖(CentOS/RHEL/欧拉适用)

这是最可靠的方式,能自动解析并拉取所有传递依赖,避免手动拼凑遗漏。

MySQL
MySQL

编写正确的MySQL查询,避免字符集、索引和锁方面的常见陷阱。

下载
  • 确保联网机系统版本与目标离线机完全一致(例如都是 openEuler 22.03 LTS 或 CentOS 7.9)
  • 安装 dnf-plugins-core(CentOS 8+/欧拉)或 yum-plugin-downloadonly(CentOS 7)
  • 执行命令一次性下载所有依赖到本地目录:
mkdir -p /tmp/mysql-deps
dnf install --downloadonly --downloaddir=/tmp/mysql-deps \
  ./mysql-community-server-8.0.34-1.el8.x86_64.rpm \
  ./mysql-community-client-8.0.34-1.el8.x86_64.rpm \
  ./mysql-community-common-8.0.34-1.el8.x86_64.rpm \
  ./mysql-community-libs-8.0.34-1.el8.x86_64.rpm

完成后检查:/tmp/mysql-deps/ 下应有 30+ 个 RPM 文件,包括 libaio-0.3.112-5.el8.x86_64.rpm、numactl-libs-2.0.14-3.el8.x86_64.rpm 等。

Ubuntu 系统要用 apt download + dpkg-scanpackages 构建本地源

Ubuntu 不支持 --downloadonly,需换思路:用一台同版本联网机,把所有依赖包和 MySQL 的 .deb 全部下载下来,再生成索引供离线机 apt 识别。

  • 先查清依赖列表(在联网 Ubuntu 20.04 上运行):
apt-get download mysql-server-8.0 libaio1 libmecab2
  • 把下载的 .deb 全部放进一个空目录,比如 /tmp/mysql-offline
  • 生成 Packages 索引文件:
cd /tmp/mysql-offline
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
  • 将整个 /tmp/mysql-offline 目录拷贝到离线机,在 /etc/apt/sources.list.d/offline.list 中添加:
deb [trusted=yes] file:///tmp/mysql-offline ./
  • 然后执行 apt update && apt install mysql-server-8.0,apt 就会从本地目录解依赖并安装

安装时的顺序和权限陷阱

RPM 包之间有强安装顺序,尤其 mysql-community-common 和 mysql-community-libs 必须早于 server 和 client 安装;Debian 系虽由 apt 自动处理,但若强行用 dpkg -i *.deb,也会报 unmet dependencies。

  • 推荐安装顺序(RPM):common → libs → client → server
  • 不要用 rpm -Uvh 升级旧包——离线机上若有残留 MariaDB,先执行 rpm -e --nodeps $(rpm -qa | grep mariadb)
  • 安装后务必检查 systemctl list-dependencies mysqld,确认 network.target 和 local-fs.target 都已就绪
  • 如果 mysqld --initialize 报 glibc version too low,说明你下载的 MySQL 包和系统 glibc 不匹配(例如用了 el9 包装在 el8 系统),必须重下对应 el8 或 ubuntu20.04 标识的包

真正容易被忽略的是:依赖包的签名验证在离线环境下默认关闭,但如果你启用了 gpgcheck=1,又没导入对应密钥(如 MySQL 的 RPM-GPG-KEY-mysql),dnf install 会静默失败。建议离线部署前,把密钥也一并拷过去,用 rpm --import 导入。

热门AI工具

更多
WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

2233

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

1359

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

795

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

3072

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

5208

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

1159

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

5471

2023.08.11

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

4802

2023.08.14

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

0

2026.10.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL vs MySQL
PostgreSQL vs MySQL

共1课时 | 187人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn