在Ubuntu 22.04系统中安装MySQL 8.4 LTS时,用户常遇到“无法定位软件包”的错误。该问题通常源于系统默认软件源未包含MySQL 8.4 LTS版本,或官方MySQL APT仓库未正确配置。由于Ubuntu 22.04自带源仅提供MySQL 8.0,而8.4 LTS需通过MySQL官方发布源支持,若未添加正确的GPG密钥或repository地址(如`https://repo.mysql.com/apt/ubuntu/`),APT将无法识别该版本包。此外,网络问题、源列表格式错误或系统架构不匹配也可能导致此问题。解决方法包括手动添加MySQL官方APT源、导入签名密钥并更新软件包列表。
1条回答 默认 最新
璐寶 2025-11-18 08:44关注Ubuntu 22.04 安装 MySQL 8.4 LTS 常见问题与深度解析
1. 问题现象:无法定位软件包 mysql-server-8.4
在执行以下命令时:
sudo apt install mysql-server-8.4系统返回错误信息:
E: Unable to locate package mysql-server-8.4 E: Couldn't find any package by glob 'mysql-server-8.4'该错误表明 APT 包管理器无法在当前配置的软件源中找到指定版本的 MySQL 软件包。这是由于 Ubuntu 22.04 默认仓库仅提供 MySQL 8.0 版本,而 MySQL 8.4 LTS 并不在官方镜像源中。
2. 根本原因分析
- Ubuntu 自带源(如 http://archive.ubuntu.com)只维护长期支持版本中的默认数据库版本,当前为 MySQL 8.0。
- MySQL 8.4 LTS 是 Oracle 官方发布的长期支持版本,必须通过其专用 APT 源获取。
- 未正确添加 MySQL 官方仓库 URL:
https://repo.mysql.com/apt/ubuntu/。 - GPG 密钥未导入,导致 APT 拒绝信任第三方源。
- /etc/apt/sources.list.d/mysql.list 文件格式错误或架构不匹配(amd64/arm64)。
- DNS 或网络限制阻止访问 repo.mysql.com。
3. 解决方案流程图
graph TD A[开始安装 MySQL 8.4 LTS] --> B{是否已添加官方源?} B -- 否 --> C[下载并安装 mysql-apt-config] B -- 是 --> D[更新 APT 缓存] C --> E[导入 GPG 公钥] E --> F[配置发行版和组件] F --> D D --> G{能否找到 mysql-server-8.4?} G -- 否 --> H[检查网络、DNS、防火墙] G -- 是 --> I[执行安装命令] H --> J[修复网络策略或更换镜像代理] J --> D I --> K[完成安装并初始化]4. 分步解决方案
- 更新系统包索引:
sudo apt update && sudo apt upgrade -y - 安装 wget 工具(如未安装):
sudo apt install wget -y - 下载 MySQL APT 配置包:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb - 安装配置包(触发交互式设置):
在弹出界面中选择 MySQL Server & Cluster → mysql-8.4。sudo dpkg -i mysql-apt-config_0.8.30-1_all.deb - 手动验证源文件内容:
查看
/etc/apt/sources.list.d/mysql.list应包含类似内容:deb https://repo.mysql.com/apt/ubuntu jammy mysql-8.4 deb-src https://repo.mysql.com/apt/ubuntu jammy mysql-8.4 - 导入 MySQL GPG 密钥:
sudo mkdir -p /etc/apt/keyrings wget -O- https://repo.mysql.com/RPM-GPG-KEY-mysql | sudo gpg --dearmor -o /etc/apt/keyrings/mysql.gpg - 更新 APT 缓存:
sudo apt update - 搜索可用版本确认源生效:
输出应显示候选版本为 8.4.x。apt-cache policy mysql-server - 安装 MySQL 8.4 LTS:
sudo apt install mysql-server -y - 运行安全脚本并设置 root 密码:
sudo mysql_secure_installation
5. 故障排查表格
症状 可能原因 解决方法 “NO_PUBKEY” 错误 GPG 密钥缺失 重新导入 RPM-GPG-KEY-mysql 到 keyrings 目录 404 Not Found on repo URL 源地址拼写错误或路径变更 确认使用 https://repo.mysql.com/apt/ubuntu/ Only MySQL 8.0 available 未启用 mysql-8.4 组件 重装 mysql-apt-config 并选择正确版本 Connection timeout 网络受限或 DNS 问题 使用 curl 测试连通性或配置代理 Architecture mismatch ARM 架构尝试安装 x86_64 包 确认系统架构与源兼容性 本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报