在 Ubuntu Server 24.04 (Noble Numbat) 上安装 MySQL 8.0.45 需要特别注意,因为官方默认仓库(Apt Repository)通常只提供该系列最新的稳定版(目前通常是 8.0.x 的某个较新版本,如 8.0.39-8.0.41 等),而 8.0.45 可能尚未被正式纳入默认的稳定源中。
为了确保你能安装到确切的 8.0.45 版本,最稳妥的方法是手动配置 MySQL 官方 APT 源并指定版本号。以下是详细的操作步骤:
前置准备
首先更新系统包列表并安装必要的依赖工具:
sudo apt update
sudo apt install -y wget curl gnupg lsb-release ca-certificates
第一步:下载并添加 MySQL 官方 GPG 密钥
我们需要从 MySQL 官网获取用于验证软件包的公钥:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.32-1_all.deb
# 注意:如果上述链接失效,请访问 https://dev.mysql.com/downloads/repo/apt/ 下载最新的 mysql-apt-config .deb 包
sudo dpkg -i mysql-apt-config_0.8.32-1_all.deb
在安装过程中,交互式界面会询问你选择哪个版本的 MySQL。此时不要直接回车选择默认值。
- 请滚动到 MySQL Server & Cluster 部分。
- 选择 Custom Version(自定义版本)。
- 在列表中找到并选中 mysql-8.0 分支下的 8.0.45(如果列表中已有 8.0.45)。
- 注意:如果交互式菜单中没有 8.0.45,说明该版本刚发布,官方源尚未完全同步。这种情况下,你需要跳过此步骤,直接进行“第二步”的手动修改源文件操作。
第二步:强制指定版本(推荐方案)
如果第一步的交互菜单中没有 8.0.45,或者你想确保万无一失,请直接修改配置文件来锁定版本。
-
编辑 MySQL APT 配置文件:
sudo nano /etc/apt/sources.list.d/mysql.list(如果该文件不存在,可能是第一步未执行成功,请先执行
sudo apt install mysql-server后重新检查) -
找到包含
Version=的行,将其修改为:deb [arch=amd64,arm64] http://repo.mysql.com/apt/ubuntu noble mysql-8.0 # 确保下面这行存在或添加它,强制指定版本 Options: "Version=8.0.45"更通用的方法是直接修改
/etc/apt/preferences.d/mysql或直接在sources.list.d中指定:实际上,最可靠的方式是安装完
mysql-apt-config后,手动编辑/etc/apt/sources.list.d/mysql.list,确保没有硬编码的版本号限制,然后使用apt-cache madison mysql-server查看可用版本。如果确实没有 8.0.45,则必须通过mysql-apt-config的后续配置或手动下载.deb包安装。针对 8.0.45 的特殊处理(如果源里没有):
由于 8.0.45 可能非常新,建议直接去 MySQL 下载页 下载对应的.deb包进行本地安装,这是最直接的。假设源里已经有了 8.0.45,执行以下命令:
sudo apt update # 查看可用的具体版本 apt-cache madison mysql-server | grep 8.0.45
第三步:安装特定版本
如果 apt-cache madison 显示了 8.0.45,则直接安装:
sudo apt install mysql-server=8.0.45-1ubuntu1
(注意:版本号后缀 -1ubuntu1 可能会根据构建环境不同而变化,请以 apt-cache madison 显示的确切字符串为准)
如果你希望同时安装客户端和服务器,且版本一致:
sudo apt install mysql-client=8.0.45-1ubuntu1 mysql-server=8.0.45-1ubuntu1
第四步:启动与验证
安装完成后,启动服务并设置开机自启:
sudo systemctl start mysql
sudo systemctl enable mysql
sudo systemctl status mysql
验证版本是否符合要求:
mysql --version
# 或者进入数据库内部查询
mysql -u root -p -e "SELECT VERSION();"
常见问题与替代方案
情况 A:官方源中没有 8.0.45
如果 apt-cache madison 找不到 8.0.45,说明该版本尚未推送到 Ubuntu 24.04 的官方源中。此时你有两个选择:
- 等待官方更新:MySQL 通常会在发布后几天内更新源。
- 手动下载 RPM/DEB 包:
- 访问 MySQL Downloads。
- 选择 Linux – Generic (x86_64, Linux 2.6.37-) 或直接找 Debian / Ubuntu 专区。
- 下载
mysql-server-8.0_8.0.45-1ubuntu22.04_amd64.deb(文件名需适配)。 - 安装:
sudo dpkg -i mysql-server-8.0_8.0.45-1*.deb - 修复依赖:
sudo apt --fix-broken install
情况 B:安全初始化
首次安装后,MySQL 通常会生成一个随机密码。你可以查看日志获取临时密码:
sudo grep 'temporary password' /var/log/mysql/error.log
或者重置 root 密码:
sudo mysql_secure_installation
通过以上步骤,你应该能在 Ubuntu 24.04 上成功部署 MySQL 8.0.45。如果遇到具体的报错信息,可以提供错误日志以便进一步分析。
CLOUD云枢