Удаленное подключение к mysql

Главные вкладки

Аватар пользователя egoryich egoryich 24 января 2012 в 16:01

Добрый день.

Решил я попробовать подключить mysql базу с другого сервера, чтоб снять нагрузку mysql на сервере. Оба сервера находятся в локалке, на обоих стоит Ubuntu 10.04.3 LTS. На 1 сервере nginx(фронт)+apache2(бек)+eaccelerator. На 2ом mysql 5.1.41. Конфиг 1ого сервера: Xeon 3.4; 2gb оперативы; vmware esxi, на 2ом 1.8GHz; 1Gb на железе.
По devel'у с локальной базой страничка подгружается примерно за 1-1.5 сек, если подключить ту же самую базу по локалке время доходит ~4 сек.
Куда смотреть? в чем могут быть затруднения? в sql'ом виде база весит 1гиг без логов.

Заранее спасибо.

Комментарии

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 24 января 2012 в 17:44

По идее, утверждается, что коннект через tcp port всего на 20% медленее, чем через socket, но на практике почему-то наблюдается заметно больше.

Я бы скорее сделал все на одном, но аццком по железу компе.

Аватар пользователя bsyomov bsyomov 25 января 2012 в 4:19

"<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a>" wrote:
По идее, утверждается, что коннект через tcp port всего на 20% медленее, чем через socket, но на практике почему-то наблюдается заметно больше.

Откуда такая цифра? Это время установки соединения или передачи результатов? Ничего что это всё зависит от массы факторов? Что за фееричный бред? Smile

"<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a>" wrote:
Я бы скорее сделал все на одном, но аццком по железу компе.

И были бы не правы, в большинстве случаев разделение сервера БД и веб сервера очень правильная практика.

Аватар пользователя egoryich egoryich 25 января 2012 в 9:44

диски допустим можно проверить юбунтовским bonnie и викторией
mysql почти по default'у, какие настройки можно подкрутить для проверки удаленного подключения?
а способна друпаловская база нормально работать удаленно? я хоть и не спец в mysql, но такое ощущение что она чересчур сложная и ёмкая, чем и может затруднятся доступ удаленно.
имеет ли смысл в innodb? может с ней будет работать быстрее?
сеть? не думаю, что в ней может тормозить

Аватар пользователя bsyomov bsyomov 25 января 2012 в 10:27

Какие-такие "bonnie и викторией" - iostat, iotop.
Вам надо найти узкое место. И его устранить. Это может быть сеть, это может быть ввод/вывод, это может быть не оптимальная настройка чего-либо, например отключённый query cache в mysql, или какая-нибудь подобная глупость.

"egoryich" wrote:
а способна друпаловская база нормально работать удаленно? я хоть и не спец в mysql, но такое ощущение что она чересчур сложная и ёмкая, чем и может затруднятся доступ удаленно.

ROFL Круть. И что вы там сложного и ёмкого нашли? И как объём базы (который вообще говоря зависит от сайта, а большая база это гигабайты, и милионы записей) или её сложность (что вы понимаете под сложностью бд?) вообще связаны с работой по сети по вашему?

"egoryich" wrote:
сеть? не думаю, что в ней может тормозить

Думать не надо, надо проверять.

Наиболее вероятные проблемы:
- удалённый сервер медленно обрабатывает запрос - смотреть нагрузку на диски, настройки mysql.
- удалённый сервер медленно принимает команду, отдаёт ответ - смотреть сеть.

Аватар пользователя bsyomov bsyomov 25 января 2012 в 10:33

Чуть не забыл - посмотрите на то, как у вас происходит авторизация пользователя на сервере mysql, нет-ли там лишнего медленного dns запроса.