Я пытаюсь запустить свой PHP-скрипт через Terminal in Mac. Когда я пытаюсь запустить скрипт, я получаю эту ошибку:
Предупреждение: mysqli_connect (): (HY000 / 2002): нет такого файла или каталога
Вот как я пытаюсь подключиться:
mysqli_connect ( 'локальный', 'корень', 'корень', 'my_db');
Я также попытался подключиться с помощью хоста: 127.0.0.1 вместо localhost, и я получил эту ошибку:
Предупреждение: mysqli_connect (): (HY000 / 2002): соединение отклонено
Из того, что я читал в Интернете, он может иметь какое-то отношение к mysql-сокету, но все, что я пытаюсь сделать, чтобы заставить его работать, не помогает.
Я даже пытался подключиться с помощью следующего:
: /Applications/MAMP/tmp/mysql/mysql.sock
: /var/mysql/mysql.sock
Любая идея, какова может быть проблема / решение?
Имел ту же проблему. Вот что я сделал.
Открытый терминал (/Applications/Utilities/terminal.app)
Используйте свой любимый текстовый редактор для создания / редактирования ~/.bash_profile
. Например, если вы используете vim, введите vim ~/.bash_profile
. Я использую TextMate, поэтому я набрал mate ~/.bash_profile
.
Добавьте следующие строки:
export MAMP_SQL=/Applications/MAMP/Library/bin export MAMP_PHP=/Applications/MAMP/bin/php/php5.5.10/bin export PATH="$MAMP_SQL:$MAMP_PHP:$PATH"
Эти строки гарантируют, что первые версии MySQL и PHP, которые найдены (и, следовательно, используются), являются версиями, используемыми MAMP. NB: Убедитесь, что php5.5.10 соответствует версии MAMP. Вы можете проверить это по умолчанию http://localhost:8888/MAMP/index.php?page=phpinfo&language=English
по умолчанию. СОХРАНИТЕ ФАЙЛ (мне не нужно было спасти это, но неизменно кто-то жалуется, что он не работает).
Закройте окно терминала и снова откройте его. Это перезапустит оболочку, которая загрузит ваш скрипт .bash_profile
.
Введите тип which php
. Вы должны получить что-то похожее на /Applications/MAMP/bin/php/php5.5.10/bin/php
Введите тип which mysql
. Вы должны получить что-то похожее на /Applications/MAMP/Library/bin/mysql
Если по какой-либо причине вы получаете что-то отличное от ответов от 5 и 6, вернитесь и проверьте свой .bash_profile; скорее всего, вы просто пренебрегли, чтобы сохранить его должным образом.
Если на вашем компьютере установлена MySQL, вы можете выполнить следующую команду:
mysql -u "username"
заменив «имя пользователя» на имя пользователя вашего компьютера
ПРИМЕЧАНИЕ. Часто время root не работает, попробуйте имя пользователя вашего компьютера.