Rumah >pangkalan data >tutorial mysql >Tajuk yang mungkin untuk artikel anda ialah: Mengapa Pelayan MySQL Saya Terus Melemparkan Ralat \'Terlalu Banyak Sambungan\' Walaupun Selepas Meningkatkan Had? Tajuk ini adalah soalan, menangani
Ralat "Terlalu Banyak Sambungan" Berpunca daripada Sambungan "Sleep" MySQL Terbiar
Dalam senario ini, sambungan melahu yang berlebihan dalam "Sleep" negeri telah meningkatkan kekerapan ralat "Terlalu Banyak Sambungan" dalam MySQL. Walaupun meningkatkan had sambungan, punca sambungan berlebihan ini masih sukar difahami.
Analisis sebab
Sambungan tidur biasanya timbul apabila skrip PHP mewujudkan sambungan pangkalan data dan melaksanakan pertanyaan tanpa segera memutuskan sambungan. Akibatnya, sumber pelayan menjadi terikat, menyebabkan sambungan tulen bergelut untuk mewujudkannya.
Penyelesaian
Optimumkan skrip PHP
Pastikan bahawa skrip PHP tidak berjalan untuk jangka masa yang terlalu lama dan ia memutuskan sambungan daripada pangkalan data apabila tidak diperlukan lagi.
Kurangkan masa jalan pertanyaan
Optimumkan pertanyaan yang memakan masa untuk mengurangkan beban pada pelayan pangkalan data. Ini meminimumkan bilangan proses yang disusun.
Konfigurasikan tetapan MySQL
Tingkatkan nilai tunggu_masa tamat (lalai: 8 jam) untuk menyebabkan MySQL menamatkan sambungan tidak aktif dengan lebih cepat . Anda juga boleh meningkatkan bilangan sambungan serentak yang dibenarkan (max_connections) berdasarkan trafik yang anda jangkakan.
Pantau trafik
Jejak trafik Apache dan MySQL -Penggunaan sambungan untuk mengenal pasti puncak masa dan corak yang luar biasa. Ini membolehkan anda membuat pelarasan pada konfigurasi PHP dan MySQL untuk mengendalikan beban.
Pertimbangkan kaedah sambungan alternatif
Sambungan berterusan boleh membantu dalam kes tertentu untuk mengurangkan bilangan sambungan yang dibuat dan diputuskan. Walau bagaimanapun, anda harus mempertimbangkan penggunaannya dengan teliti, terutamanya apabila skrip berjalan untuk jangka masa yang lama.
Dengan melaksanakan langkah-langkah ini, anda boleh mengurangkan bilangan sambungan tidur, mengurangkan beban pada pelayan pangkalan data dan dengan itu kurangkan ralat "Terlalu Banyak Betulkan Sambungan".
Atas ialah kandungan terperinci Tajuk yang mungkin untuk artikel anda ialah: Mengapa Pelayan MySQL Saya Terus Melemparkan Ralat \'Terlalu Banyak Sambungan\' Walaupun Selepas Meningkatkan Had? Tajuk ini adalah soalan, menangani. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!