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

Я случайно установил версию 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.

Ответ 1

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

sudo rm -rf /var/db/receipts/com.mysql.*

Ответ 2

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

/Library/Receipts/InstallHistory.plist

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

Ответ 3

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

$ brew uninstall mysql

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

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

Ответ 4

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, он не должен работать

Ответ 5

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

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

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

Ответ 6

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

Ответ 7

Вам нужно определить, где был установлен 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

Ответ 8

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

~/.mysql_history

Ответ 9

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

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

Ответ 10

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

Ответ 11

sudo find / | grep -i mysql

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