Как удалить MySQL из Mac OS X?


208

Я случайно установил версию PowerPC MySQL на свой Intel Mac в Snow Leopard, и она установилась без проблем, но, конечно, не работает должным образом. Я просто не уделял достаточно внимания. Теперь, когда я пытаюсь установить правильную версию x86, он говорит, что не может установить, потому что более новая версия уже установлена. Google запрос заставил меня выполнить эти действия / удалить эти файлы, чтобы удалить его:

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/MySQL*
rm -rf ~/Library/PreferencePanes/MySQL*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*

И наконец удалил строку MYSQLCOM = -YES- из /etc/hostconfig

Похоже, они совсем не помогли. Я все еще получаю то же сообщение о том, что есть более новая версия. Я попытался установить еще более новую версию (текущую бета-версию), и он также дал мне то же самое сообщение о уже устанавливаемой более новой версии. Я не могу удалить его из Prefs Pane, потому что я также никогда не устанавливал PrefPane.


30
Строки sudo rm -rf с подстановочными знаками немного безответственны. Особенно, когда вы разыгрываете сеть достаточно широко, чтобы удалить что-либо, начинающееся с букв «My» - MySQL не обладает исключительным владением словом «My» в своем названии.
Эрик Голдберг,

6
Я бы также предложил сначала создать резервную копию / usr / local / mysql / data - многие могут не осознавать, что именно там MySQL хранит свои данные на Mac.
Майкл Скотт Катберт

Ответы:



35

У меня также были записи в:

/Library/Receipts/InstallHistory.plist

что я должен был удалить.


Какие это были записи? Надеюсь, это было только в старых версиях, но я не вижу там ничего с именем mysql.
Termato

21

Если вы установили mysql через brew, мы можем использовать команду для удаления mysql.

$ brew uninstall mysql

Uninstalling /usr/local/Cellar/mysql/5.6.19...

Это сработало для меня.


4
Я хочу ... Я удаляю свою версию DMG из 10.8, чтобы я мог установить версию Brew! :-)
Дантистон

1
Также удалите "export PATH =" / usr/local/opt/mysql@5.6/bin: $ PATH "" из ~ / .zshrc или ~ / .bash_profile или ~ / .bashrc.
Химаншу Танвар

11
ps -ax | grep mysql

* остановить и убить любые процессы MySQL

brew remove mysql
brew cleanup

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/MySql*

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

отредактируйте /etc/hostconfigи удалите строкуMYSQLCOM=-YES-

rm -rf ~/Library/PreferencePanes/My*    
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*

* перезагрузите компьютер, чтобы убедиться, что все процессы MySQL убиты, попробуйте запустить mysql, он не должен работать


Я установил MySQL 5.6, используя Brew. Doing brew remove mysqlвыдал мне ошибку: «Ошибка: Нет такой бочонок: / usr / local / Cellar / mysql». Так что я должен был сделать brew uninstall mysql@5.6. Кроме того, мне пришлось удалить "export PATH =" / usr/local/opt/mysql@5.6/bin: $ PATH "" из профиля bash (~ / .zshrc для моего случая)
Химаншу Танвар

10

Помимо длинного списка команд удаления в вашем вопросе, который кажется довольно полным в моем недавнем опыте именно этой проблемы, я обнаружил, что mysql.sock работает в / private / var, и удалил его. я использовал

find / -name mysql -print 2> /dev/null

... чтобы найти что-то похожее на каталог или файл mysql и удалить большую часть того, что появилось (кроме модулей доступа Perl / Python). Вам также может понадобиться проверить, что демон все еще не работает с помощью Activity Monitor (или с помощью командной строки ps -A). Я обнаружил, что mysqld все еще работает даже после удаления файлов.


1
Вы можете (и в этом случае, вероятно, должны) использовать, -inameесли ваша findподдержка поддерживает выполнение поиска без
учета

4

У меня также был файл конфигурации в /etc/my.cnf, который мне нужно было удалить в моем Mac OS X Snow Leopard.


4

Это может быть излишним, но историю команд MySQL можно также стереть из:

~/.mysql_history

3

Вы должны определить, куда был установлен MySQL, прежде чем пытаться его удалить.

Я всегда использую руководство Hivelogic по установке под Mac OS X, которая собирает MySQL из исходного кода. При настройке сборки вы можете указать каталог для установки MySQL с параметром --prefix . Вы должны убедиться, что каталог не существует, и попытаться установить его из исходного кода.

./configure --prefix=/usr/local/mysql --with-extra-charsets=complex \
--enable-thread-safe-client --enable-local-infile --enable-shared \
--with-plugins=innobase

Старый ответ, я знаю, но он появился в задании на проверку . Может быть, вы должны добавить, как определить, где был установлен mysql, а не просто как его установить. На самом деле, это не совсем ответ на вопрос.
Майк

3

Вам также следует проверить / var / db / receivets и удалить все записи, содержащие com.mysql. *

Использование sudo rm -rf /var/db/receipts/com.mysql.* не работает для меня. Мне пришлось зайти в var / db / receives и удалить каждый отдельно.



0

Удалить MySQL полностью

Откройте Терминал

Используйте mysqldumpдля резервного копирования ваших баз данных

Проверьте процессы MySQL с помощью:

ps -ax | grep mysql

Остановите и убейте любые процессы MySQL

Проанализируйте MySQL на HomeBrew:

brew remove mysql
brew cleanup

Удалить файлы:

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*

Выгрузить предыдущий MySQL Auto-Login:

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

Удалить предыдущую конфигурацию MySQL:

subl /etc/hostconfig` 
# Remove the line MYSQLCOM=-YES-

Удалить предыдущие настройки MySQL:

rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*

Перезагрузите компьютер, чтобы убедиться, что все процессы MySQL уничтожены.

Попробуйте запустить MySQL, он не должен работать


0

Я также нашел

/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

после использования всех других ответов здесь, чтобы удалить MySQL Community Server 8.0.15 из OS X 10.10.


0

Версия ОС: 10.14.6 Версия MYSQL: 8.0.14

Перейти в Системные настройки -> MYSQLвведите описание изображения здесь

Остановить сервер MySQL

введите описание изображения здесь

Здесь будет показан один вариант удаления MYSQL 8 после остановки сервера Mysql.


-8

sudo find / | grep -i mysql

Это сработало как обаяние для меня. Просто просмотрел список и убедился, что все, что связано с MySQL, было удалено.


5
Это оказалось очень плохо для меня, так как он нашел такие вещи, как изображения MySQL, которые использовал Coda 2, а также некоторые файлы в Adobe Bridge.
Ian128K

2
быстрее:sudo find / -iname "*mysql*"
bfontaine

2
Да, не делайте этого .. он стирает все другие зависимости вашей программы. Argh, я получил клавиатуру счастливым .. потерял много дерьма.
Джон Drefahl

2
Это очень плохое предложение. Я разрушил мою систему. Он удалил любой файл, в котором было имя mysql. Он даже испортил сиквел про и другие программы. Теперь, хотя переустановите MySQL, но я получаю ошибки, когда я пытаюсь подключиться с Sequel Pro. Пожалуйста, сообщите об этом ответе и удалите его, прежде чем многие люди испортят свой компьютер. И, пожалуйста, предложите мне, что мне теперь делать?
Алок Кумар

4
Почему это считается плохой идеей? Я имею в виду, вы должны знать, что вы делаете. Вы не должны удалять все, что находит эта команда. Но одна команда не приносит никакого вреда. И очень мне помог.
Juuro
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.