在EC2 Ubuntu Xenial 16.04安装MySQL时出现依赖未满足错误,求解决方案
问题重现
执行安装命令:
sudo apt-get install mysql-server
出现以下错误:
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
linux-headers-5.13.0-1028-aws : Depends: linux-aws-5.13-headers-5.13.0-1028 but it is not going to be installed
mysql-server : Depends: mysql-server-8.0 but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
解决步骤
先执行系统提示的依赖修复命令,这是最直接的尝试:
sudo apt --fix-broken install该命令会自动下载并安装缺失的依赖包,修复系统的依赖状态。
修复完成后,再次尝试安装MySQL:
sudo apt-get install mysql-server如果修复命令失败,先更新系统源并升级现有包(注意Ubuntu 16.04已停止官方支持,源可能需要调整):
sudo apt update && sudo apt upgrade -y若更新时出现源无法访问的错误,需要替换为旧版本维护源:
- 备份原有源文件:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak - 编辑源文件:
sudo nano /etc/apt/sources.list - 将文件内所有内容替换为:
deb http://old-releases.ubuntu.com/ubuntu/ xenial main restricted universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse - 保存退出后,重新执行更新和修复命令:
sudo apt update && sudo apt --fix-broken install
- 备份原有源文件:
若仍有问题,手动安装缺失的依赖包:
先安装缺失的内核头文件包:sudo apt-get install linux-aws-5.13-headers-5.13.0-1028再安装MySQL Server 8.0:
sudo apt-get install mysql-server-8.0最后安装mysql-server元包:
sudo apt-get install mysql-server
内容的提问来源于stack exchange,提问作者Sha

