Database
PDOException: SQLSTATE[HY000]: General error: 2006 MySQL server has gone away. – PHP HY000/2006
La connessione persistente verso il server MySQL è stata chiusa dal server per inattività (`wait_timeout`) o la query inviata supera il parametro `max_allowed_packet`.
Cosa significa questo errore?
La connessione persistente verso il server MySQL è stata chiusa dal server per inattività (`wait_timeout`) o la query inviata supera il parametro `max_allowed_packet`.
Messaggio originale
PDOException: SQLSTATE[HY000]: General error: 2006 MySQL server has gone away.Contesto e parole chiave
Alias
- MySQL server has gone away PDO
- SQLSTATE HY000 2006 PHP
Messaggi alternativi
- server MySQL disconnesso timeout o pacchetto troppo grande
Prodotti
- PHP Engine / Zend Engine / PHP-FPM / Composer
Piattaforme
- Linux
- macOS
- Windows Server
Parole chiave
- composer
- Database
- errore-php-pdo-mysql-server-has-gone-away-2006
- HY000/2006
- php
- php 8
- php.database.pdo-mysql-server-has-gone-away
Cause possibili
Origine del problema per PHP PDO: MySQL server has gone away (Errore 2006)
La connessione persistente verso il server MySQL è stata chiusa dal server per inattività (`wait_timeout`) o la query inviata supera il parametro `max_allowed_packet`.
molto comuneDiagnosi
Diagnostica PHP per PHP PDO: MySQL server has gone away (Errore 2006)
Esaminare i log degli errori di PHP nel file specificato da error_log in php.ini o nei log di PHP-FPM /var/log/php-fpm/www-error.log.
Come leggere il risultato. Mostra lo stack trace completo dell'errore, file e numero di riga esatti in cui è avvenuto il blocco.
tail -n 50 /var/log/nginx/error.logRisoluzione
Procedura di risoluzione per PHP PDO: MySQL server has gone away (Errore 2006)
Applicare la correzione al codice PHP o alla configurazione del php.ini secondo le specifiche ufficiali.
- Verificare la riga di codice segnalata nello stack trace
- Regolare i parametri in php.ini se l'errore deriva da limiti di sistema
- Riavviare il servizio PHP-FPM o Apache
sudo systemctl reload php-fpmDomande frequenti
Come risolvere il codice o errore HY000/2006 in PHP?
La connessione persistente verso il server MySQL è stata chiusa dal server per inattività (`wait_timeout`) o la query inviata supera il parametro `max_allowed_packet`.
Approfondimenti
- PHP Official Manual - Errors and Exceptions documentazione_ufficiale