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

196

Я случайно установил версию MySQL PowerPC на моем 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, потому что я никогда не устанавливал PrefPane.

  • 28
    Строки sudo rm -rf с подстановочными знаками немного безответственны. Особенно, когда вы разыгрываете сеть достаточно широко, чтобы удалить что-либо, начинающееся с букв «My» - MySQL не обладает исключительным владением словом «My» в своем названии.
  • 5
    Я бы также предложил сначала создать резервную копию / usr / local / mysql / data - многие могут не осознавать, что именно там MySQL хранит свои данные на Mac.
Теги:
macos
osx-snow-leopard
osx

11 ответов

203
Лучший ответ

Попробуйте запустить

sudo rm -rf /var/db/receipts/com.mysql.*
  • 3
    также sudo rm -rf /Library/StartupItems/MySQLCOM если он существует
35

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

/Library/Receipts/InstallHistory.plist

который я должен был удалить.

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

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

$ brew uninstall mysql

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

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

  • 4
    Я хочу ... Я удаляю свою версию DMG из 10.8, чтобы я мог установить версию Brew! :-)
  • 0
    Также удалите "export PATH =" / usr/local/opt/[email protected]/bin: $ PATH "" из ~ / .zshrc или ~ / .bash_profile или ~ / .bashrc.
8
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, он не должен работать

  • 0
    Я установил MySQL 5.6, используя Brew. Выполнение brew remove mysql мне ошибку: «Ошибка: Нет такого кега: / usr / local / Cellar / mysql». Поэтому мне пришлось сделать brew uninstall [email protected] . Также мне пришлось удалить "export PATH =" / usr/local/opt/[email protected]/bin: $ PATH "" из профиля bash (~ / .zshrc для моего случая)
7

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

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

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

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

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

3

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

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

3

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

~/.mysql_history
3

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

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

./configure --prefix=/usr/local/mysql --with-extra-charsets=complex \
--enable-thread-safe-client --enable-local-infile --enable-shared \
--with-plugins=innobase
  • 0
    Старый ответ, я знаю, но он появился в задании на проверку . Может быть, вы должны добавить, как определить, где был установлен mysql, а не просто как его установить. На самом деле, это не совсем ответ на вопрос.
0

Для меня я установил MariaDB несколько лет назад с помощью доморощенного. Правильная процедура удаления была: brew удалить mariadb.

-6

sudo find / | grep -i mysql

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

  • 5
    Это оказалось очень плохо для меня, так как он нашел такие вещи, как изображения MySQL, которые использовал Coda 2, а также некоторые файлы в Adobe Bridge.
  • 2
    быстрее: sudo find / -iname "*mysql*"
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню