При попытке обновить мою систему перед обновлением до 21.04 LTS MySQL выдавал ошибки, которые его нельзя было ни обновить, ни отремонтировать, поэтому я очистил его с помощью:
sudo apt purge mysql-server-8.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
mysql-server-8.0*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 555934 files and directories currently installed.)
Purging configuration files for mysql-server-8.0 (8.0.17-0ubuntu2) ...
Processing triggers for systemd (246.6-1ubuntu1.3) ...
Однако теперь он не переустанавливается.
sudo apt-get install mysql-client
Reading package lists... Done
Building dependency tree
Reading state information... Done
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-common : Conflicts: mysql-client-8.0 but 8.0.25-0ubuntu0.20.10.1 is to be installed
Conflicts: mysql-client-core-8.0 but 8.0.25-0ubuntu0.20.10.1 is to be installed
Что-то явно не работает, но не знаю, что делать, что делать?
Вот некоторые дополнительные результаты, основанные на комментариях:
Sudo apt update
Hit:1 http://archive.ubuntu.com/ubuntu groovy InRelease
Hit:2 http://archive.ubuntu.com/ubuntu groovy-updates InRelease
Hit:3 http://archive.ubuntu.com/ubuntu groovy-security InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
sudo apt clean
sudo apt autoremove
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
sudo apt --fix-broken install
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
sudo apt update && sudo apt upgrade
Hit:1 http://archive.ubuntu.com/ubuntu groovy InRelease
Hit:2 http://archive.ubuntu.com/ubuntu groovy-updates InRelease
Hit:3 http://archive.ubuntu.com/ubuntu groovy-security InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
sudo dpkg --configure -a
sudo apt install -f
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Затем я попытался установить mysql-client, который, несмотря на это, выдает ошибки не устанавливается:
sudo apt install mysql-client
Reading package lists... Done
Building dependency tree
Reading state information... Done
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-common : Conflicts: mysql-client-8.0 but 8.0.25-0ubuntu0.20.10.1 is to be installed
Conflicts: mysql-client-core-8.0 but
8.0.25-0ubuntu0.20.10.1 is to be installed
E: Unable to correct problems, you have held broken packages.
Дополнительные попытки:
sudo apt install mysql-client
Reading package lists... Done
Building dependency tree
Reading state information... Done
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-common : Conflicts: mysql-client-8.0 but 8.0.25-0ubuntu0.20.10.1 is to be installed
Conflicts: mysql-client-core-8.0 but 8.0.25-0ubuntu0.20.10.1 is to be installed
E: Unable to correct problems, you have held broken packages.
sudo apt purge mysql-client-8.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'mysql-client-8.0' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
sudo apt purge mysql-client-core-8.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'mysql-client-core-8.0' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Кажется, мне говорят, что MySQL не установлен, но его установка конфликтует! Как мне решить эту загадку?
Иногда это можно исправить, немного почистив apt
. В терминале попробуйте сделать следующее:
sudo apt update
sudo apt clean
sudo apt autoremove
Теперь попробуйте установить клиент MySQL. Если ошибка сохраняется, то, возможно, вам нужно "исправить" установку:
sudo apt --fix-broken install
sudo apt update && sudo apt upgrade
sudo dpkg --configure -a
sudo apt install -f
Теперь вы должны иметь возможность установить клиент:
sudo apt install mysql-client
Примечание: Хотя вы удалили MySQL Server, в /var/lib/mysql
все еще остаются некоторые файлы. Они намеренно оставлены после удаления. Если вам не нужна ни одна из баз данных, которые были доступны ранее, смело удаляйте этот каталог. У вас также может остаться /etc/mysql
, который также можно удалить, если вам больше не нужны файлы конфигурации.
Если MySQL отказывается играть с вами, то вам может понадобиться выполнить следующие шаги, чтобы полностью удалить его из системы:
sudo systemctl stop mysqld
sudo apt purge mysql-server mysql-common mysql-server-core-* mysql-client-core-*
И, для полноты картины, давайте убедимся, что в системе не установлена MariaDB:
sudo apt purge mariadb-server
sudo dpkg -l | grep mysql
В идеале вы получите нулевые результаты. Однако, если что-то все еще установлено, вы можете увидеть что-то вроде этого:
ii libmysqlclient21:amd64 8.0.25-0ubuntu0.20.04.1 amd64 Клиентская библиотека базы данных MySQL
ii php-mysql 2:7.4+75 all MySQL модуль для PHP [по умолчанию]
ii php7.4-mysql 7.4.3-4ubuntu2.4 amd64 MySQL модуль для PHP
Если вы видите значения, apt purge
удалите их из системы:
sudo apt purge php-mysql php7.4-mysql libmysqlclient21
Сделайте то же самое для MariaDB:
sudo dpkg -l | grep mariadb
sudo rm -rf /var/lib/mysql/
sudo rm -rf /etc/mysql/
sudo rm -rf /var/log/mysql
Дважды проверьте и почистите эти файлы:
sudo find / -iname 'mysql*' -exec rm -rf {} \;
ВАЖНО: Эта команда удалит любой файл, начинающийся с mysql
из вашей системы, не спрашивая подтверждения. Используйте ее с большой осторожностью и внимательностью. sudo deluser --remove-home mysql
sudo delgroup mysql
Если вы не можете удалить группу, проверьте, нет ли других учетных записей пользователей, входящих в группу MySQL:
less /etc/passwd
Если они найдены, удалите пользователей из группы, затем delgroup
снова. sudo apt autoremove -y
sudo apt autoclean
До тех пор, пока на вашей машине не настроена какая-либо система XAMPP, это должно полностью удалить движок базы данных с вашей машины.