2013-05-01 2 views
1

У меня есть одна проблема с таблицей FEDERATED в MySQL. У меня есть один сервер (MySQL версии 5.0.51a), который служит для хранения данных клиента и фактически ничего более. Логическая база данных хранится на другом сервере (версия 5.1.56), иногда она должна обрабатывать эти данные с первого сервера. Таким образом, у второго сервера есть одна таблица FEDERATED, которые подключаются к первому серверу.Ошибка # 1159 с таблицей MySQL FEDERATED и одним видом запроса

Фактически, он работал без проблем, но в последнее время я получил странные ошибки с этим решением. Невозможно выполнить какие-либо запросы на втором сервере.

Например, SELECT * FROM table - не работает. Он висит ровно 3 минуты, а затем дает:

Код ошибки: 1159 Got таймаут чтения пакетов связи

Ok, я проверил таблицу на первом сервере, и это нормально. Затем я попробовал еще несколько запросов к таблице FEDERATED, и они работают ...

Например, запрос типа SELECT * FROM table WHERE id=x возвращает результат. Вероятно, это может иметь проблему с размером результата, поэтому я попробовал запрос с манекеном WHERE -clause like SELECT * FROM table WHERE id > 0 - и он также работает ...

Наконец-то я нашел «решение», которое помогло всего два дня - на первый сервер я сделал копию таблицы, а на втором сервере я повторно объявил новую таблицу FEDERATED с новой строкой подключения к этой копии. И это работает, но через два дня такая же проблема с новой скопированной таблицей.

Я уже говорил с обоими поставщиками серверов, они не видят проблем, все работает, и другой хостинг-провайдер является причиной проблем.

Я проверил все переменные в MySQL и не имеет параметра тайм-аута с 3 минутами и т. Д. Итак, как я могу справиться с такими проблемами? Кажется, что это что-то автоматическое на стороне сети или базы данных, но я не знаю, как определить причину проблем.

Есть ли у вас идеи?

ответ

0

Вы можете попробовать проверить настройки размера MTU для сетевых интерфейсов на обоих серверах.