Aplikasi saya perlu melakukan koneksi yang cukup sering ke database mysql di komputer lain. Namun saya sering mendapatkan kesalahan pada koneksi; Saya biasanya bisa terhubung tetapi setelah banyak percobaan. Pesan kesalahan yang saya dapatkan adalah:
Mysql.mysql(): Couldn't connect to SQL-server: Lost connection to MySQL server at 'reading authorization packet', system error: 2
Saya telah membaca informasi di sini: http://dev.mysql.com/doc/refman/5.0/en/error-lost-connection.html dan juga komentar untuk bug http://bugs.mysql.com/bug .php? id = 28359 .
Ada cukup banyak koneksi yang dibatalkan seperti yang Anda lihat:
mysql> TAMPILKAN STATUS GLOBAL SEPERTI 'Aborted_connects'; + ------------------ + ------- + | Variable_name | Nilai | + ------------------ + ------- + | Aborted_connects | 2540 | + ------------------ + ------- +
Saya menambah batas waktu dari 5 menjadi 15 detik:
mysql> tampilkan variabel seperti 'connect_timeout'; + ----------------- + ------- + | Variable_name | Nilai | + ----------------- + ------- + | connect_timeout | 15 | + ----------------- + ------- +
tetapi ini tidak membantu. Ada saran bagaimana cara men-debug ini? Itu membuat interaksi database sangat lambat ketika rata-rata harus mencoba menghubungkan 5 kali sebelum berfungsi.
Saya belum mencoba untuk menjaga koneksi tetap terbuka untuk masa aplikasi, apakah itu lebih baik? Bagaimana cara mencegah koneksi menutup?
Jika itu membantu komputer dengan masalah adalah Windows 7 32-bit, sedangkan server mysql ada di Debian Linux.