Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa pertanyaan MySQL kini tamat masa selepas 60 saat apabila ia digunakan untuk melaksanakan dengan jayanya?

Mengapa pertanyaan MySQL kini tamat masa selepas 60 saat apabila ia digunakan untuk melaksanakan dengan jayanya?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-18 22:12:03470semak imbas

Why does a MySQL query now time out after 60 seconds when it used to execute successfully?

Isu Tamat Masa 60 Saat MySQL Server

Artikel ini meneroka isu di mana pertanyaan MySQL yang sebelum ini berjaya kini tamat selepas 60 saat , memaparkan mesej ralat "Pelayan MySQL telah hilang." Walaupun pertanyaan itu sendiri lambat, ia sentiasa menjadi sebahagian daripada kerja malam dan tidak pernah menimbulkan masalah sehingga baru-baru ini.

Simptom Masalah

  • Pertanyaan terhenti tepat 60 saat sebelum tamat masa.
  • Isu ini boleh diterbitkan semula dengan menjalankan pernyataan "SELECT SLEEP(120);" daripada PHP.
  • Pernyataan yang sama berjaya dilaksanakan apabila dijalankan daripada klien MySQL.
  • Melaraskan pembolehubah "wait_timeout" kepada 28800 saat tidak menyelesaikan masalah.

Punca Berkemungkinan

  • Sumber terhad, seperti CPU atau ingatan, bukanlah punca yang berkemungkinan kerana isu itu sentiasa tamat tepat pada 60 saat.
  • A punca yang berpotensi boleh menjadi tetapan yang salah dan bukannya pengehadan sumber.

Penyelesaian masalah

Tetapan PHP lalai "mysql.connect_timeout" didapati sebagai punca daripada isu tersebut. Tetapan ini mengawal bukan sahaja tamat masa sambungan tetapi juga masa menunggu untuk respons awal pelayan.

Penyelesaian

Untuk meningkatkan masa menunggu, konfigurasi PHP berikut boleh digunakan:

ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300); 

Perubahan ini akan meningkatkan masa menunggu kepada nilai yang ditentukan, membolehkan pertanyaan selesai tanpa tamat masa.

Atas ialah kandungan terperinci Mengapa pertanyaan MySQL kini tamat masa selepas 60 saat apabila ia digunakan untuk melaksanakan dengan jayanya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn