Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Membetulkan \'Ralat Umum: Pelayan MySQL 2006 Telah Pergi\' Semasa Operasi Pukal?

Bagaimana untuk Membetulkan \'Ralat Umum: Pelayan MySQL 2006 Telah Pergi\' Semasa Operasi Pukal?

Linda Hamilton
Linda Hamiltonasal
2024-10-30 22:20:30217semak imbas

How to Fix the

Menyelesaikan Isu "Ralat Umum: Pelayan MySQL 2006 Telah Pergi"

Apabila melakukan operasi pukal, seperti memasukkan ratusan rekod ke dalam pangkalan data MySQL, anda boleh menghadapi ralat berikut:

[PDOException] SQLSTATE[HY000]: General error: 2006 MySQL server has gone away

Ralat ini biasanya timbul disebabkan oleh isu tamat masa yang mana pelayan MySQL memutuskan sambungan anda selepas tempoh tidak aktif yang ditetapkan. Untuk menyelesaikan isu ini, fokus pada melaraskan dua tetapan utama:

1. wait_timeout

Tetapan wait_timeout menentukan tempoh (dalam saat) yang MySQL akan tunggu sebelum menamatkan sambungan yang tidak aktif. Secara lalai, nilai ini ditetapkan kepada 30 saat yang agak rendah pada persekitaran pengehosan dikongsi.

Untuk meningkatkan tunggu_masa tamat, keluarkan pertanyaan berikut pada permulaan operasi anda:

SET session wait_timeout=28800;

Ini arahan menetapkan tunggu_masa tamat kepada 28800 saat, iaitu lebih kurang 8 jam.

2. interactive_timeout (Pilihan)

Dalam sesetengah kes, anda mungkin juga perlu melaraskan tetapan interactive_timeout. Tetapan ini menentukan bilangan saat sebelum MySQL menamatkan sambungan interaktif.

Untuk mengubah suai interaktif_masa tamat, laksanakan pertanyaan berikut selepas melaraskan tunggu_masa tamat:

SET session interactive_timeout=28800;

Pengesahan

Untuk mengesahkan bahawa tetapan telah berjaya diubah suai, anda boleh melaksanakan pertanyaan berikut sebelum dan selepas membuat perubahan:

<code class="php">$results = $db->query("SHOW VARIABLES LIKE '%timeout%'", TRUE);</code>

Awas

Sambil meningkatkan tetapan tamat masa boleh menyelesaikan isu segera, ia adalah penting untuk mempertimbangkan perkara berikut:

  • Menetapkan tunggu_masa tamat kepada nilai yang sangat tinggi (cth., 8 jam) boleh menyebabkan menunggu yang berlebihan untuk sambungan melahu.
  • Adalah disyorkan untuk mengekalkan tunggu_masa tamat dalam tempoh julat yang munasabah, seperti 300 saat.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan \'Ralat Umum: Pelayan MySQL 2006 Telah Pergi\' Semasa Operasi Pukal?. 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