ОШИБКА: SQLSTATE [HY000] [2002] Невозможно установить соединение, так как целевой компьютер активно отказал в этом

В процессе отладки кода неожиданно произошла ошибка.
У этого есть ряд ошибок относительно подключения к базе данных.

ERROR: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it.
( ! ) Fatal error: Uncaught exception 'PDOException' with message ' in C:\wamp\www\web\main\users.php on line 15
( ! ) PDOException: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it. in C:\wamp\www\web\main\users.php on line 15

это код, на который указывает ошибка

function __construct()
{
$this->con = new PDO("mysql:host=".$this->host.";dbname=".$this->db,$this->user,$this->pass);
}

Я не знаю, что делать, потому что у меня обычно не бывает таких проблем, поэтому я мало изучал вопрос о вампе.
Спасибо за помощь.

12

Решение

Если значок WAMP — оранжевый, то одна из служб не запущена.

В вашем случае, похоже, что MySQL еще не запущен, поскольку вы получаете сообщение, указывающее сервер не работает и поэтому прислушиваясь к запросам.

Посмотрите на журнал mysql, и если это ничего не говорит, посмотрите на журнал событий Windows, в Windows -> Applications раздел. Сообщения об ошибках довольно хороши для определения причины сбоя MySQL.

Иногда это вызвано тем, что файл My.ini из другой установки был обнаружен WAMPServers MySQL, обычно в папках \ windows или \ windows \ system32. Выполните поиск по «my.ini» и «my.cnf», и если вы найдете один из них вне структуры папок \ wamp …., то удалите его или, по крайней мере, переименуйте, чтобы он не был найден. Затем перезапустите службу MySQL.

23

Другие решения

У меня была похожая проблема при попытке перенести сайт Drupal с одного локального хоста на другой. С Mac под управлением XAMMP на Windows под управлением WAMP.

Это было сообщение об ошибке, которое я продолжал получать при попытке доступа к страницам сайта.

PDOException: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it.
in drupal_get_installed_schema_version() (line 155 of C:\wamp\www\chia\includes\install.inc).

В settings.php я все правильно изменил, имя базы данных, пользователя и пароль.

$databases = array (
'default' =>
array (
'default' =>
array (
'database' => 'mydatabasename',
'username' => 'mydbusername',
'password' => 'mydbpass',
'host' => 'localhost',
'port' => '8889',
'driver' => 'mysql',
'prefix' => '',
),
),
);

После нескольких часов бессмысленного поиска в Google я изменил порт на пустое значение:

'port' => '',

И после этого сайт загрузился правильно.

8

Перезагрузите ваш wampServer … это должно решить.
и если это не так ..
Реста

1

Возможно использование разных порт за MySQL чем использовать в вашем коде

введите описание изображения здесь

$conn = new PDO("mysql:host=".SERVER_NAME.";port=3307;dbname=".DB_NAME, DB_USER, DB_PASS);

И то и другое порты должно быть таким же.

1

Удалите следующие файлы из каталога:

\wamp\bin\mysql\mysql5.6.17\ib_logfile0
\wamp\bin\mysql\mysql5.6.17\ib_logfile1
\wamp\bin\mysql\mysql5.6.17\ibdata1

Это решило мою проблему.

0

Просто перезапустите сервер Wamp и запустите php bin / magento cache: чистый

0

Я получал эту ошибку, пытаясь запустить «php artisan migrate» в Windows с установкой виртуальной коробки / vagrant / homestead.

В документации сказано, что мне нужно было запустить эту команду на виртуальной машине.

Это сработало !!!

не забудьте сделать это внутри вашей текущей папки проекта.

-1
По вопросам рекламы [email protected]