Ben PHP mysqli sınıfını kullanırken sorun yaşıyorum ve her yerde cevap bulmak mümkün olmamıştır.
Benim komut bir sınıf o fonksiyonları boyunca kullandığı bir mysqli bağlantı oluşturur. Daha sonra, bu komut çatal. Bağlantı yanı sıra çocuklar tarafından kullanılır, ama ben çocukları ölmek ebeveyn kapalı olan bağlantısı (MYSQL server has gone away) bir sorun haline çalıştırıyorum.
Ben (sadece mysql kullanıyordum) MySQLi geçiş yapmadan önce ben sadece db bağlantısı üst süreçte sorgu yapmadan önce orada olduğundan emin olmak için mysql_ping çağırdı. Mysqli benzer bir ping işlevi vardır ama bağlantı gitti ise aslında yeniden değil. Ben (php.ini ve ini_set kullanarak) hiçbir şans ile küresel ayar ON = mysqli.reconnect kullanarak çalıştı.
Php mysql_connect işlevi zaten varolan bir bağlantıyı kapmak sağlar, bu yüzden yerine mysqli'nin mysql kullanılarak olsaydı, ben sadece sağ çatallı sürecinden sonra çocuğun bağlantıyı yeniden olabilir. ANCAK mysqli böyle bir özelliğe sahip görünmüyor ...
Ben bunu başardı tek şey çağrı mysqli-> ping idi () ve false döndürdü eğer ebeveyn olarak veritabanına yeniden. Bu korkunç verimsiz olduğunu, ve ben daha ziyade mysqli'nin (ve manuel yeniden bağlanır gerek yok) ile doğru bir şekilde yapmak için nasıl anlamaya olduğunu geri mysql değiştirmek zorunda .. ederim
Herhangi bir öneriniz?