我已经安装mysql-server
在我的Ubuntu 16.04 LTS而且效果非常好。
接下来我安装了mariadb-server
。mariadb-client
它们与MySQL所以我决定强制卸载所有玛拉雅数据库组件。之后我遇到了问题MySQL。所以我决定强制重新安装MySQL。
无法卸载,mysql-server
因为卸载后存在未满足的依赖关系玛拉雅数据库...
所以我尝试了所有可能的组合,apt-get
并dpkg
强行去除MySQL和玛拉雅数据库...最后,我还手动删除了目录树中的所有文件,这些文件包含名称中的任何内容MySQL或者玛拉雅数据库...
$ mysql
The program 'mysql' can be found in the following packages:
* mysql-client-core-5.7
* mariadb-client-core-10.0
Try: sudo apt install <selected package>
但我仍然无法重新安装MySQL因为与玛拉雅数据库缺失,反之亦然......
$ sudo apt-get install -f mysql-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
mysql-server is already the newest version (5.7.22-1ubuntu16.04).
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
mariadb-client : Depends: mariadb-client-10.0 (>= 10.0.34-0ubuntu0.16.04.1) but it is not going to be installed
mariadb-server-10.0 : PreDepends: mariadb-common (>= 10.0.34-0ubuntu0.16.04.1) but it is not going to be installed
Depends: mariadb-client-10.0 (>= 10.0.34-0ubuntu0.16.04.1) but it is not going to be installed
Breaks: mysql-server
mariadb-server-core-10.0 : Depends: mariadb-common (>= 10.0.34-0ubuntu0.16.04.1) but it is not going to be installed
mysql-server : Depends: mysql-community-server (= 5.7.22-1ubuntu16.04) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
其实我需要MySQL在我的系统上,但我无法重新安装 Ubuntu。
请帮我重新安装MySQL。
答案1
您搞乱了打包系统。“最后,我还手动删除了目录树中的所有文件,这些文件的名称中包含来自 MySQL 或 MariaDB 的任何内容”。不要这样做!
现在对您来说唯一可用的稳定包装系统状态是未安装任何提到的软件包,然后更加小心地重新开始。
要进入“NONE”状态,请删除并清除每个包:
PKGS="mysql-server mariadb-client mariadb-server-10.0 mariadb-common mysql-community-server"
sudo apt-get check
sudo apt remove $PKGS
sudo apt purge $PKGS
sudo apt autoremove
sudo apt-get install --reinstall mysql-server
您可能会收到来自这些命令的警告,可能是由于您造成的混乱。请尝试忽略它们。
答案2
上帝存在!:D
输入以下命令即可解决该问题:
sudo apt-get -f install
没有任何其他参数
然后通过以下方式显示所有包:
sudo dpkg -l | grep mariadb
sudo dpkg -l | grep mysql
并按正确的顺序删除有问题的软件包:
sudo apt-get --purge autoremove package_name
彻底删除所有有问题的软件包后,我可以重新安装MySQL沒有任何問題……
感谢@waltinator 的帮助。