MySQL používá různé proměnné časového limitu pro různé fáze.
- Když je spojení navázáno, používá
connection_timeout
- Když čeká na další dotaz, použije
wait_timeout
- Když neobdrží dotaz v konkrétní čas, který používá
net_read_timeout
anet_write_timeout
- A tak dále...
Obvykle net_read_timeout
neměl by být problém, ale když máte nějaké problémy se sítí, zejména při komunikaci se serverem, může se tento časový limit zvýšit, protože místo jednoho paketu pro dotaz, který jste odeslali do databáze, MySQL čeká na celý dotaz číst, ale kvůli problému se sítí neobdrží zbytek dotazu. MySQL neumožňuje klientovi mluvit se serverem, dokud není výsledek dotazu zcela načten.
Tyto dvě proměnné, které jsou nakonec proměnnými relací, nemůžete správně změnit.
Také z dokumentu MySQL si můžete přečíst
net_read_timeout
:
net_write_timeout
:
Proměnnou defaults v samotné MySQL můžete zkontrolovat pomocí
> mysql show variables like '%timeout';