Ralat MySQL 2006: Pelayan mysql telah hilang
P粉786432579
2023-08-23 17:47:00
<p>Saya menjalankan pelayan di pejabat saya untuk memproses beberapa fail dan melaporkan hasilnya kepada pelayan MySQL jauh. </p>
<p>Pemprosesan fail mengambil sedikit masa dan proses itu ditamatkan pada pertengahan jalan dengan ralat berikut: </p>
<pre class="brush:php;toolbar:false;">2006, pelayan MySQL telah hilang</pre>
<p>Saya pernah mendengar tentang tetapan MySQL <strong>wait_timeout</strong>, tetapi adakah saya perlu menukarnya pada pelayan pejabat saya atau pelayan MySQL jauh? </p>
Saya sudah banyak kali dalam situasi ini dan selalunya jumpa jawapannya
max_allowed_packet
.akan menjadi
/etc/my.cnf
(在[mysqld]
下)中的值提高到 8 或 16M 通常可以修复该问题。 (MySql 5.7 中的默认值为4194304
, iaitu 4MB. )Nota: Jika baris itu tidak wujud, buat sahaja baris itu dan ia mesti muncul sebagai entri di bawah
[mysqld]
Nota: Ini boleh ditetapkan semasa pelayan sedang berjalan, tetapi ia akan hilang selepas daemon mysql dimulakan semula. Gunakan
SET GLOBAL max_allowed_packet=104857600
(ini menetapkannya kepada 100MB)Nota: Pada Windows, anda mungkin perlu menyimpan fail my.ini atau my.cnf anda menggunakan ANSI dan bukannya pengekodan UTF-8.
Mungkin lebih mudah untuk menyemak sama ada sambungan wujud dan mewujudkannya semula jika perlu.
Untuk maklumat, lihat PHP:mysqli_ping.