поиск:
Полезные ссылки

  • Форум по MySQL

  • Статьи по MySQL

  • Вопросы по MySQL

  • MySQL.com


  • Базы данных

  • MySQL

  • PostgreSQL


  • PHP конференция 2005
    Подробности!

    A.2.9. Коммуникационные ошибки / Оборванные соединения

    Начиная с MySQL 3.23.40 ошибка Aborted connection выдается только в случае, если mysqld запущен с --warnings.

    В журнале ошибок могут присутствовать ошибки наподобие этой:

    010301 14:38:23 Aborted connection 854 to db: 'users' user: 'josh'

    (see Раздел 4.9.1, «Журнал ошибок»).

    Такие ошибки сигнализируют об одной из следующих ситуаций:

    • Клиентская программа не выполнила mysql_close() перед выходом.

    • Клиент бездействовал на протяжении более чем wait_timeout или interactive_timeout (see Раздел 4.5.6.4, «SHOW VARIABLES»).

    • Клиентская программа внезапно завершилась посреди передачи.

    В подобных ситуациях увеличивается значение переменной сервера Aborted_clients.

    Значение переменной сервера Aborted_connects увеличивается в следующих случаях:

    • Когда пакет соединения содержит неверную информацию.

    • Когда пользователь не имеет привилегий для соединения с базой данных.

    • Когда пользователь использует неверный пароль.

    • Когда на получение пакета соединения уходит более connect_timeout секунд. See Раздел 4.5.6.4, «SHOW VARIABLES».

    Обратите внимание: все перечисленное выше может свидетельствовать о попытке взлома базы данных!

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

    • Использование как полудуплексного, так и полного дуплексного Ethernet-протокола под Linux. Данная ошибка присутствует во многих Linux-драйверах Ethernet. Выполните тест на данную ошибку - для этого следует передать очень большой файл через ftp-соединение между этими двумя машинами. Если передача проходит в режиме всплеск-пауза-всплеск-пауза ..., то можно констатировать наличие дуплексного синдрома Linux. Единственное решение проблемы - отключить как полу-, так и полнодуплексную передачу на концентраторах и коммутаторах.

    • Некоторая проблема с библиотекой потоков, вызывающая прерывания при чтении.

    • "Криво" сконфигурированный TCP/IP.

    • Дефектные Ethernet-карты, концентраторы, коммутаторы или кабели... Такие проблемы можно как следует диагностировать только путем замены оборудования.

    • max_allowed_packet слишком мала, или запросам требуется памяти больше, чем было выделено для mysqld (see Раздел A.2.8, «Ошибка Packet too large»).

     
    © 1997-2005 PHP Club Team
    Rambler's Top100