2012-05-14 3 views
88

Я не могу получить mysql для начала на os x 10.7. Он находится в /usr/local/mysql/bin/mysqlКоманда Mysql не найдена в OS X 10.7

Я получаю команду не найден, когда я ввожу mysql --version в терминал.

Я пробовал это can't access mysql from command line mac, но все еще получить команду не найдена. Я попытался установить mysql с dmg, и я попытался установить его через homebrew, и я не могу заставить его работать. Когда я пытаюсь запустить MySQL с доморощенного я получаю MySQL won't start

Это мой $PATH:

/USR/бен:/бен:/USR/SBIN:/SBIN:/USR/местные/бен:/usr/X11/bin:/usr/local/git/bin:/Пользователи/Victoria/bin:/usr/local // usr/local/mysql/bin/private/var/mysql/private/var/mysql/bin

+1

Является ли каталог установки в вашем PATH? –

+1

Есть несколько вещей, чтобы проверить. Сначала внимательно следуйте инструкциям по установке, которые прилагаются к DMG, и приложите все соответствующие шаги для OS X. Для запуска/остановки mysql предусмотрена панель предустановок системы. Кроме того, OSX известен тем, что изменил местоположение mysql.sock - вам нужно будет установить его в /tmp/mysql.sock в my.cnf & php.ini - google, что будет много руководств – RiquezJP

+0

mysql --version будет только работайте, если вы поручите BASH иметь эту команду ярлыка - это подробно описано в install read me – RiquezJP

ответ

217

Это проблема с $ PATH:

/usr/local//usr/local/mysql/bin/private/var/mysql/private/var/mysql/bin.

$PATH где оболочка ищет командные файлы. Папки для поиска необходимо разделять двоеточием. И вы хотите, чтобы /usr/local/mysql/bin/ на вашем пути, но вместо этого он ищет в /usr/local//usr/local/mysql/bin/private/var/mysql/private/var/mysql/bin, которого, вероятно, не существует.

Вместо этого вы хотите ${PATH}:/usr/local/mysql/bin.

So export PATH=${PATH}:/usr/local/mysql/bin.

Если вы хотите, чтобы это запускалось каждый раз, когда вы открываете терминал, поместите его в файл .bash_profile, который запускается при открытии терминала.

+2

сейчас я получаю ошибку, которую получаю с homebrew ERROR 2002 (HY000): не удается подключиться к локальному серверу MySQL через сокет '/tmp/mysql.sock' (2) – SilverNightaFall

+1

Это означает, что сокет mysql неуместен, что является совсем другой ошибкой. Это проблема с mysql, а не с вашим '$ PATH'. –

+1

Сделайте то же, что сказал другой ответ: Удалите этот файл pid, убедитесь, что все экземпляры остановлены (убейте все процессы, которые не спускаются), проверьте, что ничего не слушает порт MySQL 3306 (netstat должен помочь) и попытайтесь снова запустить MySQL. –

2

Я пробовал много предложений на SO, но это тот, который на самом деле работает для меня:

sudo sh -c 'echo /usr/local/mysql/bin > /etc/paths.d/mysql' 

то типа

mysql 

Он предложит вам ввести пароль ,

+1

Кажется, что не работает на bash с macOS Sierra –

+0

Я не использовал новую версию Mac, мой mac умер :(поэтому я больше не могу его тестировать – zazu

+0

@zazu Извините за потерянный. – Sajad

16

Я столкнулся с той же проблемой, и, наконец, я получил решение. Прочтите нижеприведенные шаги, если вы используете MAMP.

  1. Старт MAMP или MAMP PRO
  2. Запустите сервер
  3. Открыть терминал (Приложения -> Утилиты)
  4. Введите: (одна линия) /Applications/MAMP/Library/бен/MySQL - -host = localhost -uroot -proot

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

+0

Это сработало для меня в Mac OS 10.11 –

10

Один альтернативный способ создает символьную ссылку в /usr/local/bin

ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql 

Но если вам нужны другие исполняемые файлы, как mysqldump, вам нужно будет создать символьную ссылку на них.

+0

или 'sudo ln -s/usr/local/mysql/bin/mysql/usr/local/bin/mysql' –

1

Вы должны установить PATH для MySQL в файле .bashrc используя следующий:

export PATH=$PATH:/usr/local/mysql/bin 

Но если вы используете oh my zsh, то вы должны добавить путь внутри .zshrc файла.

Смежные вопросы