Потеряно соединение с сервером MySQL при чтении начального пакета связи, системная ошибка: 0 - PullRequest
112 голосов
/ 22 апреля 2011

Я получаю сообщение об ошибке:

"Потеряно соединение с сервером MySQL при чтении исходного пакета связи, системная ошибка: 0"

во время подключенияmy db.

Если я использую localhost, все работает нормально.Но когда я использую свой действующий IP-адрес, как показано ниже, появляется ошибка:

mysql_connect("202.131.xxx.106:xxxx", "xxxx", "xxxxx") or die(mysql_error());

Ответы [ 26 ]

0 голосов
/ 27 августа 2017

Брандмауэр apache блокирует IP-адрес. поэтому для предоставления доступа используйте эти команды:

firewall-cmd --permanent --zone = доверенный --add-source = YOUR_IP / 32

firewall-cmd --permanent --zone = доверенный --add-порт = 3306 / tcp

firewall-cmd --reload

0 голосов
/ 13 августа 2017

Я сделал ниже 3 шага, затем работал на меня.

  1. bind-address = "YOUR MACHINE IP" в my.cnf файле в / etc / my.cnf

  2. Перезапустить службу по команде: service httpd restart

  3. GRANT ALL PRIVILEGES ON yourDB.* TO 'username'@'YOUR_APPLICATION_IP' IDENTIFIED BY 'YPUR_PASSWORD' WITH GRANT OPTION;

0 голосов
/ 06 июня 2017

Разрешение на чтение и запись в каталог базы данных также проблема, которую я нашел.Просто убедитесь, что ваше приложение может записывать файлы в БД.Попробуйте chmod 777 для тестирования.

0 голосов
/ 11 февраля 2019

Если bind-адрес отсутствует в вашем файле конфигурации и mysql размещен на экземпляре AWS, проверьте свою группу безопасности. В идеальных условиях входящие правила должны принимать все соединения от порта 3306, а исходящее правило должно отвечать на все действительные IP-адреса.

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

Я пытаюсь подключить мой док-контейнер db в Ubuntu 18.04, та же проблема.

Сначала проверьте ваше устройство, запустив nmcli dev, чтобы проверить, подключено ли устройство docker0.

Если он не подключен, попробуйте перезапустить службу Docker:

sudo service docker restart

0 голосов
/ 07 сентября 2016

У меня была идентичная проблема.Чтобы это исправить, я просто изменил хост с localhost: 3306 на localhost.Таким образом, ошибка может появиться, когда Вы отключите неподходящий порт для соединения.Лучше оставить его по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...