MySQL Sleep …zzzZZZ

July 13, 2009

sleepPada suatu ketika (kek cerpen aja..), aplikasi PHP saya berkata bahwa di database to many connection .. alias kebanyakan koneksi, loh kok bs pdhal sebelumnya selama bertahun-tahun aplikasi ini blm pernah begini?

Daftar koneksi bs dilihat pada processlist.

SHOW PROCESSLIST

Salah satu jawabannya yaitu karena banyaknya koneksi ke database, kebetulan database server yg digunakan memang makin lama makin banyak aplikasi yg menggunakannya. Dan bbrp aplikasi tersebut ada yg tdk memutuskan koneksi sehingga koneksi tersebut berada pada state/keadaan sleep.

Beberapa cara yg sy gunakan dan cukup membantu yaitu :

  1. Memastikan bahwa setiap aplikasi hendaknya selalu menutup koneksi setelah menggunakannya, di PHP bs dengan mysql_pconnect
  2. Merubah variabel mysql untuk waktu koneksi interaktifnya, variabel tersebut yaitu wait_timeout dan interactive_timeout. Nilai default dari kedua variabel ini yaitu 480 menit atau 28800 detik, kita bs menyingkatnya menjadi 1 – 10 menit saja atau sesuai kebutuhan. Krn proses query ringan sebenarnya tdk membutuhkan waktu sebanyak itu.
  3. Melakukan disable persistent connections pada php.ini
    mysql.allow_persistent = Off

Semoga bermanfaat.

3 Responses to “MySQL Sleep …zzzZZZ”

  1. Barbara19 Says:

    Never disclose your salary. ,

  2. Bob28 Says:

    Rogers is building two new coal plants now. ,

  3. Arnold24 Says:

    In all such situations, the driver must ensure the integrity of the data by synchronizing access to the shared locations. ,


Leave a Reply