Как мне полностью удалить 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.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.