Команда Mysql не знайдена в OS X 10.7


163

Я не можу отримати мій mysql, щоб почати на OS x 10.7. Він знаходиться в с/usr/local/mysql/bin/mysql

Отримую команду не знайдено, коли я набираю mysql --versionтермінал.

Я спробував це не в змозі отримати доступ до mysql з командного рядка mac, але все одно отримати команду не знайдено. Я спробував встановити mysql з dmg, і я спробував встановити його через homebrew, і я не можу заставити його працювати. Коли я намагаюся запустити mysql з homebrew, я отримую, що MySQL не запуститься

Це моє $PATH:

/ usr / bin: / bin: / usr / sbin: / sbin: / usr / local / bin: / 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

mysql --версія спрацює лише в тому випадку, якщо ви доручите BASH мати цю команду швидкого доступу - про це детально йдеться в програмі "Прочитати мене"
RiquezJP

5
Якщо ви перейдете до папки mysql cd / usr / local / mysql / bin, а потім видаєте команду версії, вона буде працювати. ./mysql --версія
RiquezJP

Відповіді:


371

Це проблема з вашим $ 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.

Так і робити export PATH=${PATH}:/usr/local/mysql/bin.

Якщо ви хочете, щоб це було запущено кожного разу, коли ви відкриваєте термінал, помістіть його у файл .bash_profile, який запускається, коли Terminal відкриється.


2
тепер я отримую помилку, яку я отримував з homebrew ПОМИЛКА 2002 (HY000): Не вдається підключитися до локального сервера MySQL через сокет '/tmp/mysql.sock' (2)
SilverNightaFall

2
Це означає, що розетка mysql неправильно розміщена, що є зовсім іншою помилкою. Це проблема з mysql, а не вашою $PATH.
Hophat Abc

1
Зробіть те, що сказано в іншій відповіді: Видаліть цей pid-файл, переконайтеся, що всі екземпляри зупинені (вбивайте будь-які процеси, не знижуючись), перевірте, чи нічого не слухає порт MySQL 3306 (netstat повинен допомогти) і спробуйте запустити MySQL знову.
Hophat Abc

1
Я рекомендую відкрити Monitor Monitor і вбити всі екземпляри mysql
Hophat Abc

1
Мій двійковий файл mysql не був /usr/local/mysql/bin.
користувач124384

29

Я зіткнувся з тим же питанням, і нарешті я отримав рішення. Будь ласка, виконайте наведені нижче дії, якщо ви використовуєте MAMP.

  1. Запустіть MAMP або MAMP PRO
  2. Запустіть сервер
  3. Відкритий термінал (Програми -> Утиліти)
  4. Введіть: (один рядок) / програми / MAMP / бібліотека / bin / mysql --host = localhost -uroot -proot

Це працює для мене.


29

Одним із альтернативних способів є створення м'якого зв’язку в /usr/local/bin

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

Але якщо вам потрібні інші виконувані файли mysqldump, вам потрібно буде створити м'яке посилання на них.


2
абоsudo ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
Боб Штейн

18

Ви повинні встановити PATH для mysql у вашому .bashrcфайлі, використовуючи наступне:

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

Але якщо ви використовуєте, oh my zshто вам слід додати шлях до .zshrcфайлу.


9

Ваш PATH може не налаштуватися. Перейдіть до терміналу та введіть:

echo 'export PATH="/usr/local/mysql/bin:$PATH"' >> ~/.bash_profile

По суті, це дозволяє отримати доступ до mysql з будь-якого місця.

Тип cat .bash_profile для перевірки налаштування PATH.

Перевірте версію mysql зараз:mysql --version

Якщо це все ще не працює, закрийте термінал і знову відкрийте. Перевірте версію зараз, вона повинна працювати. Удачі!


8

Якщо ви встановили MySQL Server і все одно отримаєте

mysql -u root -p command not found

Ви, швидше за все, відчуваєте це, оскільки у вас є старша версія Mac.

Спробуйте це:

в домашньому каталозі в терміналі open -t .bash_profile

пасти export PATH=${PATH}:/usr/local/mysql/bin/ всередину і зберегти

замість того, щоб писати mysql -uroot -pнаступне:

/usr/local/mysql/bin/mysql -uroot -p 

Введіть ваш пароль. Тепер ти в.


3

Я спробував багато пропозицій щодо SO, але це те, що насправді працювало для мене:

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

тоді ви набираєте

mysql

Він запропонує ввести свій пароль.


Я не використовував нову версію Mac, мій mac помер :( тому я більше не можу її перевірити
zazu

@zazu Вибачте за втрачене.
Саджад

3

Якщо ви використовуєте термінал, вам потрібно додати наступне ./bash_profile

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

Якщо ви використовуєте zsh, ви хочете додати вищезазначений рядок до свого ~/.zshrc


2

Додайте наступні рядки в bash_profile:

alias startmysql='sudo /usr/local/mysql/support-files/mysql.server start'
alias stopmysql='sudo /usr/local/mysql/support-files/mysql.server stop'

і збережіть файл bash_profile.

Тепер у терміналі запустіть та зупиніть сервер mysql, використовуючи наступні команди:

startmysql //to start mysql server

і

stopmysql //to stop mysql server

2

Я встановив MAMP і phpmyadmin працював.

Але не вдається знайти / usr / local / bin / mysql

Це і виправило

sudo ln -s /Applications/MAMP/Library/bin/mysql /usr/local/bin/mysql

її створення симпосилання. Для того, щоб видалити його спробувати цей linuxize.com/post/how-to-remove-symbolic-links-in-linux
Зод

1

З MAMP

  1. Знайдіть mysql, як правило, у / Applications / MAMP / Library / bin / mysql
  2. sudo vi / etc / paths
  3. Додайте цей шлях у файл / Програми / MAMP / Бібліотека / бін
  4. : wq (Зберегти та закрити файл)
  5. Закрийте вікна терміналу
  6. Відкрийте термінал і введіть mysql, і він повинен працювати

0

у терміналі робити:

vi ~/.bash_profile 

І додайте цей рядок:

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

і введіть це в терміналі:

mysql -u [username] -p [password]

0

Можливо, я допоможу комусь іншому. Жодна з наведених відповідей не спрацювала над Каталіною. Нарешті, це вирішило проблему

echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> /Users/$(whoami)/.bash_profile

Звичайно, вам доведеться змінити встановлену версію mysql

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.