在 Ubuntu Server 24.04 (Noble Numbat) 上安装 MySQL 8.0.45 需要特别注意,因为官方默认的软件源(Apt Repository)通常只提供当前最新的稳定版(目前通常是 8.0.x 系列的最新小版本),而不一定直接包含 8.0.45 这个特定版本号。
如果官方源中已经更新到了 8.0.45,你可以直接安装;如果没有,你需要通过配置特定的 PPA 或手动下载 .deb 包来指定版本。以下是两种最可靠的实施方案:
方案一:使用官方 APT 源(推荐,自动获取最新版)
这是最标准的方法。如果你的系统软件源已同步,Ubuntu 24.04 的默认仓库通常会提供较新的 8.0 系列版本。
-
添加 MySQL 官方软件源
首先确保安装了必要的工具并添加 MySQL 的 GPG 密钥和源列表。MySQL 提供了针对 Ubuntu 24.04 的专用源。# 下载并安装 MySQL APT 配置文件 sudo apt update sudo apt install -y wget gnupg ca-certificates # 下载 MySQL APT 配置包 (注意:这里选择适用于 Ubuntu 24.04 的版本) # 访问 https://dev.mysql.com/downloads/repo/apt/ 获取最新的 deb 文件 wget https://dev.mysql.com/get/mysql-apt-config_0.8.32-1_all.deb sudo dpkg -i mysql-apt-config_0.8.32-1_all.deb # 在安装过程中,会弹出一个交互界面让你选择 MySQL 版本。 # 请选择 "MySQL Server & Cluster",并在版本列表中尝试选择 8.0。 # 如果列表中没有 8.0.45,它通常会指向该系列的最新补丁版。 sudo apt update -
安装 MySQL Server
sudo apt install -y mysql-server -
验证版本
mysql --version如果输出是 8.0.45,则安装成功。如果是其他版本(如 8.0.40),请查看下方“方案二”。
方案二:强制安装特定版本 8.0.45(当官方源未包含时)
如果官方源只提供了旧版本(例如 8.0.40),而你必须使用 8.0.45,你需要手动下载对应的 .deb 包进行安装。
1. 卸载可能存在的冲突版本
如果之前安装了 MySQL 或其他版本,建议先清理:
sudo apt remove --purge mysql-server mysql-client mysql-common
sudo apt autoremove
sudo rm -rf /etc/mysql /var/lib/mysql
2. 下载 MySQL 8.0.45 的 .deb 包
访问 MySQL Downloads,选择:
- Product: MySQL Server
- Version: 8.0.45
- Platform: Linux - Generic (x86, 64-bit), Compressed (.tar.gz) -> 或者
- Platform: Linux - Generic (x86, 64-bit), RPM Format (用于转换) -> 不推荐
更简单的方法是使用 APT 的 pinning 技巧或直接下载 .deb:
由于 MySQL 官方有时不直接提供针对特定发行版的独立 .deb 链接,最稳妥的方式是使用 mysql-apt-config 中的版本选择器,或者从 Oracle 镜像站下载。
假设你找到了以下三个核心包(文件名可能随架构微调,请以实际下载为准):
mysql-community-client-core_8.0.45-1ubuntu24.04_amd64.debmysql-community-client_8.0.45-1ubuntu24.04_amd64.debmysql-community-server_8.0.45-1ubuntu24.04_amd64.deb
注意:如果你无法找到带
ubuntu24.04后缀的包,可以使用通用 Linux 包(Generic),但依赖关系可能需要手动处理。推荐使用wget从官方源地址构造 URL 下载,或者使用apt-cache policy查看是否有该版本缓存。
如果无法直接下载,可以尝试通过 apt-get 指定版本(前提是该版本已在源中但未被标记为最新):
# 查看可用版本
apt-cache madison mysql-server
# 如果看到 8.0.45,执行:
sudo apt install mysql-server=8.0.45-1...
如果上述方法均不可行(即源里真的没有 8.0.45),最可行的替代方案是使用 Docker(见下文方案三),这在服务器生产环境中更为常见且易于控制版本。
方案三:使用 Docker 安装(最灵活、推荐)
在 Ubuntu Server 上,为了确保精确获得 8.0.45 且不污染宿主机环境,使用 Docker 是最佳实践。
-
安装 Docker
sudo apt update sudo apt install -y docker.io docker-compose -
运行 MySQL 8.0.45
docker run -d --name mysql-8045 -e MYSQL_ROOT_PASSWORD=your_secure_password -p 3306:3306 -v mysql-data:/var/lib/mysql mysql:8.0.45 -
验证
docker exec -it mysql-8045 mysql --version这将确保你运行的是确切的 8.0.45 版本,且与系统原生包管理解耦。
总结与建议
- 首选检查:先运行
apt-cache policy mysql-server。如果列表中包含8.0.45,直接使用sudo apt install mysql-server即可(方案一)。 - 若版本过旧:Ubuntu 24.04 发布初期,官方源可能滞后于 MySQL 官网的最新小版本。如果必须用 8.0.45 且无法通过 APT 源获取,强烈建议使用 Docker 方案。这避免了复杂的依赖解析和手动下载
.deb包的麻烦,同时方便后续升级或回滚。 - 安全设置:无论哪种方式,安装完成后请务必运行
sudo mysql_secure_installation来设置 root 密码、移除匿名用户和禁止远程 root 登录。
CLOUD云计算