![无法安装 mysql-server-5.5/以下软件包具有未满足的依赖关系](https://linux22.com/image/1102602/%E6%97%A0%E6%B3%95%E5%AE%89%E8%A3%85%20mysql-server-5.5%2F%E4%BB%A5%E4%B8%8B%E8%BD%AF%E4%BB%B6%E5%8C%85%E5%85%B7%E6%9C%89%E6%9C%AA%E6%BB%A1%E8%B6%B3%E7%9A%84%E4%BE%9D%E8%B5%96%E5%85%B3%E7%B3%BB.png)
我是新手,所以请耐心等待。
我正在使用 ubuntu 14.04。
我尝试使用以下命令进入mysql:
mysql -u root -p
我收到以下消息:
The program mysql can be found on the following packages:
* mysql-client-core-5.5
* mariadb-client-core-5.5
* mysql-client-core-5.6
* percona-xtrabd-cluster-client-5.5
然后我输入:
sudo apt-get install mysql-client-core-5.6
安装完成后,我尝试使用以下命令再次连接 mysql:
mysql -u root -p
然后我收到错误信息:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
在网上搜索后,我发现我需要安装 mysql 服务器,因此我输入了以下命令
sudo apt-get install mysql-server
然后我收到消息:
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
mysql-server : Depends: mysql-server-5.5 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
过去一个小时里我一直在网上寻找解决方案,但是其他人也遇到了类似的错误,但他们是在升级 mysql 时遇到的,因此他们的解决方案对我来说无效。
答案1
打开终端并输入:
sudo apt-get purge mysql-client-core-5.6
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt install mysql-client-core-5.5
sudo apt install mysql-server
MySQL 数据库核心客户端和 MySQL 服务器软件包都将是相同的版本 5.5。MySQL 客户端 5.5 和 MySQL 服务器 5.5 是这些软件包在 Ubuntu 14.04 中当前“最佳”版本,由软件包维护者确定。如果您更愿意安装 MySQL 客户端 5.6 和 MySQL 服务器 5.6,您还可以在 Ubuntu 软件中心找到 mysql-client-core-5.6 和 mysql-server-5.6 软件包。重要的是,无论哪种情况,客户端和服务器版本号都要匹配。
在 Ubuntu 16.04 和 18.04 中这两个包的名称是 mysql-client-core-5.7 和 mysql-server-5.7。
答案2
以下命令解决了我的问题。
sudo aptitude install mysql-server
如果您的计算机上没有安装 aptitude,请首先使用以下命令安装 aptitude。
sudo apt-get install aptitude
答案3
我使用 Synaptic 包管理器解决了这个问题。
我发现,就我而言,我使用的是 MySQL 通用版本、服务器版本和客户端版本。
具体来说,对于常见的情况,我使用mariabd
存储库来获取文件。我使用 Synaptic 中的“Package”>“Force version”更改了此设置,并为所有软件包选择了相同的版本 (5.7.12)。
希望这有帮助。