получение ошибки «db: SQLSTATE [HY000] [2002] отказано в соединении» для Ma c после обновления MAMP - PullRequest
0 голосов
/ 12 марта 2020

Я запускал более старую версию MAMP и обнаружил, что не могу установить текущую версию Wordpress, потому что для этого требуется по крайней мере PHP версия 5.2, поэтому я обновил MAMP, который теперь работает 7.4.2. Казалось, что все в порядке с обновлением (сайты работают), пока я не попытался использовать в проекте Search-Replace-DB от interconnect. Используя GUI, я получил ошибку AJAX. Документы, указанные в случае ошибки AJAX, я должен следовать инструкциям cli; но когда я это сделаю, я получу одну из двух ошибок, независимо от того, какой подход я выберу:

db: SQLSTATE[HY000] [2002] Connection refused db: SQLSTATE[HY000] [2002] No such file or directory

Мой wp-config. php выглядит так:


/** MySQL database username */
define('DB_USER', 'root');

/** MySQL database password */
define('DB_PASSWORD', 'root');

/** MySQL hostname */
define('DB_HOST', '127.0.0.1');

Я прочитал сообщение SO , получив сообщение "db: SQLSTATE [HY000] [2002] Ошибка подключения" на Ma c с MAMP , и пытаюсь рекомендовать заменить строку '#! / usr / bin / php -q 'с' #! / usr / bin / env php -q 'в файле rdb.cli. php.

Команды cli, которые я пробовал: // posts предлагают использовать 8889, но мой mamp, похоже, работает на: 8888?

//using localhost string
php srdb.cli.php -h localhost -n test -u root -proot -s oldname.org -r localhost:8889 -v true -z

//using ip
php srdb.cli.php -h 127.0.0.1 -n test -u root -proot -s oldname.org -r localhost:8889 -v true -z

//using localhost string
php srdb.cli.php -h localhost -n test -u root -proot -s oldname.org -r localhost:8888 -v true -z

//using ip
php srdb.cli.php -h 127.0.0.1 -n test -u root -proot -s oldname.org -r localhost:8888 -v true -z

//Using path explicitly with ip
/Applications/MAMP/bin/php/php7.4.2/bin/php srdb.cli.php -h 127.0.0.1 -u root -n test -proot -s oldname.org -r localhost:/8888

После изменения строки srdb .cli. php, я все еще не могу подключиться. На данный момент, я не знаю, есть ли проблема php или mysql, если база данных повреждена, или переменные / пути / ссылки среды отключены после обновления MAMP или как go об определении этих вещей. Любая идея будет принята с благодарностью.

1 Ответ

0 голосов
/ 14 марта 2020

Для всех, кто столкнулся с этой проблемой, указание полных путей к местоположению для двоичного файла MAMP php (который будет выполнять сценарий) и сценария search-replace-db в cli решило проблему , Я помещаю строки для поиска и заменяю их в кавычках. Я также увеличил предел времени ожидания php в wp-config. php с помощью: set_time_limit (3000);

Обратите внимание, что то, как вы указываете localhost, должно быть согласованным между параметрами, передаваемыми в сценарий, и тем, что находится в вашем файле wp-config. php файл (если вы используете localhost в wp-config, используйте localhost в сценарии как хорошо)

/Applications/MAMP/bin/php/php7.4.2/bin/php /Applications/MAMP/htdocs/test/Search-Replace-DB-master/srdb.cli.php -h localhost -u root -proot --port 8889 -n test -s "http://olddomain.com" -r "http://localhost:8888/test" -v true```
...