Удаленное подключение MySQL замедляется даже после включения разрешения пропуска имени - PullRequest
3 голосов
/ 06 марта 2012

У меня настроена среда разработки с удаленным доступом к общей базе данных разработчиков.

Я испытываю ОЧЕНЬ медленное время отклика с удаленного сервера MySQL.Я добавил skip-name-resol * в файл my.cnf, перезапустил mysqld, а также убедился, что он действительно включен с помощью 'show variable' в командной строке mysql.

Интересно, что если я подключусь к интерфейсу командной строки удаленно через

mysql -h IPADDRESS -u USERNAME -p

Все команды выполняются молниеносно.

Выбор * на большой таблице мгновенно спускается по трубопроводу.

Мне интересно, почему CLI допускает немедленный ответ, но соединение php в моем приложении ждет 8-10 секунд, прежде чем вернуть какие-либо данные с удаленного сервера MySQL.Это экземпляр Amazon EC2 и Amazon linux ami, похоже, похож на CentOS.Есть идеи?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 15 августа 2013

Я только что решил ту же проблему, что и я, заняло у меня 4 дня. Апач был в порядке MySQL тоже был в порядке Проблема была в моем скрипте - gethostbyaddr (); при доступе к веб-серверу на локальном хосте все нормально. Но когда доступ к серверу с другого компьютера занимает много времени, поэтому я закомментировал gethostbyaddr (), и он работает так же быстро, как если бы он запускался с localhost. Я предполагаю, что gethostbyaddr () - это проблема DNS в Windows, о которой я расскажу позже

1 голос
/ 08 августа 2012

Я бы начал с определения источника медлительности.Это при установлении соединения, когда вы открываете БД, или это при возврате результатов выбора или обоих?Вы не говорите, какую версию PHP вы используете или какая версия MySQL работает на сервере.Мои деньги были бы на этой конкретной комбинации проблемной.Убедитесь, что у вас установлены последние обновления AMI.

...