Назад | Перейти на главную страницу

Командная строка mysql не работает

В моей системе Fedora работает mysql. У меня есть настройка xampp в системе, и проекты php, присутствующие в веб-пространстве, работают нормально. PhpMyAdmin работает нормально. эхом phpinfo() в сценарии PHP также показывает, что mysql включен. Но запуск команды mysql connect

mysql -u[username] -p[password]

Дает это -

bash: mysql: command not found

Как мне это исправить? Есть указатели?

Думаю, мне нужно указать (указать путь в каком-то файле), чтобы моя система знала, что mysql установлен. Что именно мне нужно делать?

дополнительные детали
Эта система была чужой и здесь его нет. Возможно, PHP / Mysql уже был настроен в системе. Я только что извлек xampp для linux в /opt/lampp/ и поместили туда все вышеупомянутые вещи (проекты PHP и PhpMyAdmin). После этого у меня возникла проблема с сокетом (PhpMyAdmin не работал и показывал это) -

#2002 - The server is not responding (or the local MySQL server's socket is not correctly configured) 

Я перезапустил фонарь, используя ./lampp restart но проблема осталась. Затем, после включения системы сегодня, я запустил лампу, и все работало нормально. Никаких проблем с проектом больше нет, только командная строка Mysql не работает

Как сказал Халед, проблема «команда не найдена», скорее всего, связана с настройкой пути. Если вы попытаетесь locate mysql и получается что-то вроде / opt / lampp / mysql / bin / mysql, тогда вам нужно export PATH=$PATH:/opt/lampp/mysql/bin' получить простой mysql работать. Кроме того, вы, вероятно, захотите добавить это в свой ~ / .bash_profile, чтобы он сбрасывался при следующем входе в систему.

Что касается проблемы с сокетом, ваш файл my.cnf будет указывать, где находится сокет. Двоичный файл клиента mysql будет искать в любом месте по умолчанию, с которым он скомпилирован. В случае Fedora это /var/lib/mysql/mysql.sock. Если это альтернативное расположение, вам необходимо указать это альтернативное расположение в командной строке с помощью mysql --socket=/path/to/mysql.sock. Этот файл также не будет присутствовать, если MySQL не запущен, поэтому вы можете проверить вывод ps ps -efa|grep -i mysql чтобы убедиться, что он работает. В качестве побочного примечания вы также увидите «socket =» на выходе ps, который устанавливает, куда сервер будет записывать сокет.

Вам нужно найти папку двоичных файлов Mysql и добавить этот путь в свой $PATH переменная. Ты можешь использовать find или locate для поиска двоичных файлов mysql.

Я знаком с Fedora и думаю, что Jet, вероятно, прав. Они делают различие между mysql-server и mysql-client.

не знаком с Fedora, но похоже, что вы установили mysql-server, но mysql-client не установлен