Как мне полностью удалить MySQL-сервер в Debian?

13

Я подумал, что поделюсь своим вопросом здесь, а затем отвечу, потому что, похоже, многие люди застряли в моей позиции, но не дали окончательного ответа. Проблема в том, что если вы выполните apt-get remove mysql-server, он не очистит файлы конфигурации и базы данных, поэтому, если вы как-то испортили их, то повторная установка не заменит их. Так что, похоже, многие спрашивают: «Как мне полностью удалить MySQL-сервер, чтобы я мог заново установить свежий?» - все отвечают: apt-get remove --purge mysql-server- Я не уверен, почему, но это не полностью удалить. Мой ответ следует ...

Ник Болтон
источник

Ответы:

19

удаление mysql-сервера не работает, потому что mysql-сервер - это просто метапакет, который зависит от конкретной версии сервера

apt-get remove --purge 'mysql-.*'

или

apt-get remove --purge 'mysql-server.*'

сделает свое дело.

Джастин
источник
Спасибо за чаевые. Я не знал, что можно использовать подстановочные знаки.
Ник Болтон
на самом деле это регулярное выражение, то есть «. *», а не просто ». Если вы попытаетесь удалить mysql, он будет соответствовать только пакету с именем mysql -----------, который не очень полезен :-)
Джастин
как упомянуто ниже, вы захотите с осторожностью относиться к mysql-common, который используется несколькими кусочками (на ум приходит dovecot).
Frenchie
1
Ах да, регулярное выражение не подстановочный знак - упс!
Ник Болтон
Я установил mysql 5.5 на мою распбианскую Джесси. После обновления я не знаю, почему, но он остался неверно настроенным, что не позволило его удалить должным образом. Ваш ответ полностью удалил сервер MySQL 5.5, и я смог обновить. Осторожно, вы потеряете конфигурационные файлы (базы данных?), Если не будете делать резервные копии.
russellhoff
2

Это сработало для меня (я также пытался установить v5.0, но это усугубило ситуацию):

apt-get remove --purge mysql-server-5.0 mysql-common mysql-client-5.0 \
mysql-server-5.1 mysql-client-5.1 mysql-server mysql-client

apt-get install mysql-server

Я думаю, что здесь ключ к удалению mysql-common- но я не уверен. Пожалуйста, попробуйте это и оставьте свои комментарии.

Ник Болтон
источник
Если вы используете 5.0 и выше , то apt-get purge ...такое же , какapt-get --purge remove ...
Zoredache
1

У меня были некоторые проблемы с этим. Даже после удаления всех пакетов сервера, есть несколько установленных файлов конфигурации mysql-common, что является зависимостью от libmysqlclient.

Попробуйте использовать, dpkg -S /etc/mysqlчтобы увидеть, какие пакеты устанавливают эти файлы.

Хорхе Бернал
источник
0

Вы также можете использовать dpkg -P для достижения этой цели

Со страницы руководства dpkg

 -P or --purge removes everything, including configuration files.
Dominik
источник