Если вы разработчик, работающий с PHP и MySQL, вы могли столкнуться с сообщением об ошибке «mysqli_real_connect(): (HY000/2002): соединение не может быть установлено, поскольку целевой компьютер активно отклонил его». Эта ошибка обычно возникает, когда ваш PHP-скрипт не может установить соединение с сервером базы данных MySQL. В этой статье мы углубимся в причины этой ошибки и предоставим вам несколько способов ее устранения и устранения.
Понимание ошибки.
Прежде чем перейти к решениям, давайте кратко разберемся, что означает это сообщение об ошибке. Ошибка вызвана функцией mysqli_real_connect(), которая используется для подключения к базе данных MySQL. Часть сообщения об ошибке «(HY000/2002)» указывает код ошибки, а последующее сообщение содержит более подробное объяснение. В данном случае это означает, что соединение не удалось установить, поскольку целевой компьютер (т. е. сервер MySQL) активно отказался от него.
Методы решения проблемы:
-
Проверьте состояние сервера MySQL:
Убедитесь, что сервер MySQL запущен и работает. Убедитесь, что сервер работает на правильном порту и что нет проблем с сетью, препятствующих подключению. -
Проверьте имя хоста и порт:
Дважды проверьте имя хоста и номер порта в параметрах подключения. Убедитесь, что они соответствуют конфигурации вашего сервера MySQL. Кроме того, убедитесь, что сервер разрешает удаленные подключения, если вы пытаетесь подключиться с другого компьютера. -
Проверьте имя пользователя и пароль:
Убедитесь, что имя пользователя и пароль, указанные в параметрах подключения, верны. Если вы не уверены, попробуйте войти на сервер MySQL, используя эти учетные данные, чтобы проверить их достоверность. -
Проверьте настройки брандмауэра:
Проверьте, есть ли какие-либо настройки брандмауэра, блокирующие соединение между вашим PHP-скриптом и сервером MySQL. Временно отключите брандмауэр или настройте его так, чтобы он разрешал входящие соединения через порт MySQL. -
Предоставьте достаточные привилегии:
Убедитесь, что пользователь MySQL, указанный в параметрах вашего соединения, имеет достаточные привилегии для подключения и доступа к необходимым базам данных. При необходимости предоставьте необходимые разрешения. -
Перезапустите сервер MySQL:
Попробуйте перезапустить сервер MySQL. Иногда перезапуск сервера может решить временные проблемы или конфликты. -
Проверьте ресурсы сервера.
Если ваш сервер MySQL работает на компьютере с ограниченными ресурсами, возможно, он не может обрабатывать новые соединения. Контролируйте использование ресурсов сервера и при необходимости рассмотрите возможность обновления. -
Проверьте расширения PHP:
Убедитесь, что необходимые расширения PHP для MySQL установлены и включены. В большинстве случаев вам понадобится расширениеmysqli. Если он не включен, включите его в файле конфигурации PHP.
Ошибка «mysqli_real_connect(): (HY000/2002): соединение не может быть установлено, поскольку целевой компьютер активно отказался от него» может расстраивать, но, следуя методам устранения неполадок, изложенным в этой статье, вы можете ее преодолеть. Не забудьте проверить состояние сервера MySQL, проверить параметры соединения, просмотреть настройки брандмауэра, предоставить достаточные привилегии и убедиться, что необходимые расширения PHP установлены и включены. Сделав это, вы вернетесь к установлению успешных соединений между вашим PHP-скриптом и сервером MySQL.