PHP Warning: mysqli_real_connect() : MySQL server has gone away

May 29, 2012 03:55

PHP Warning: mysqli_real_connect() : MySQL server has gone away
Вот такую вот ошибку я начал видеть несколько раз в день после перехода на PHP 5.3 под Windows.
Длительные поиски в гугле ни к чему не привели, но вот в чем оказалось дело в нашем случае:
PHP использует одну из двух библиотек для работы с mysql: MySql Client Library (libmysql) или MySql Native Driver (mysqlnd). Под windows до версии php 5.3 (не включая) использовалась библиотека libmysql. В версии php 5.3 по умолчанию используется mysqlnd и нет версии php 5.3 скомпилированной с использованием libmysql.
Вышеописанная ошибка появилась именно в php 5.3 с использованием mysqlnd. В php 5.2 где использовалась libmysql этой проблемы не было, но она появилась сразу же после апгрейда. При установке сайта на linux хостингах с php 5.3 такой проблемы не наблюдалось.
Так что если у кого вылазиет такая ошибка - вполне возможно, что это не баг в вашем коде, а просто вы используете php 5.3 под Windows.
Previous post Next post
Up