Я думаю, что можно оказаться в этом положении с уже установленными более ранними версиями mysql. У меня была та же самая проблема, и ни одно из вышеупомянутых решений не работало для меня. Я исправил это так:
Использовал команды remove
& cleanup
от brew, выгрузил скрипт launchctl
, затем удалил каталог mysql в /usr/local/var
, удалил мой существующий /etc/my.cnf
(оставьте это на ваше усмотрение, если он будет применяться) и launchctl plist
Обновлена строка для plist. Также обратите внимание, что каталог альтернативных скриптов безопасности будет зависеть от того, какую версию MySQL вы устанавливаете.
Шаг за шагом:
brew remove mysql
brew cleanup
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /usr/local/var/mysql
Я тогда начал с нуля:
- установлен mysql с
brew install mysql
запустил команды, которые предложил brew: (см. Примечание: ниже)
unset TMPDIR
mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
Запустите mysql с помощью команды mysql.server start
, чтобы иметь возможность войти в нее
Использован альтернативный скрипт безопасности:
/usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation
Следовал разделу launchctl
из выходных данных скрипта пакета brew, например,
#start
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
#stop
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Boom.
Надеюсь, это кому-нибудь поможет!
Примечание: бит --force
на brew cleanup
также очистит устаревшие кеги, думайте, что это новая функция доморощенного приготовления.
Обратите внимание на второе: комментатор говорит, что шаг 2 не требуется. Я не хочу проверять это, так что YMMV!