mysqli_sql_exception (error 2006): MySQL server has gone away in XAMPP

Durante una connessione al database MySql, ricevo l'eccezione "mysqli_sql_exception MySQL server has gone away in" con codice di errore 2006. Cosa significa e come si risolve?

Risolta 3
MySql 23-08-2024 2 Risposte 140 Visite 0

Risposte ( 2 approvate )

  1. AskDB Staff
    +1
    26-06-2024 10:39:08
    Rispondi

    L'eccezione MySQL server has gone away in, significa che il motore di database MySql non è raggiungibile per l'host indicato o non riesce a rispondere alla richiesta/query e risulta di fatto disconnesso.

     

    I motivi potrebbero essere diversi, legati al server in cui è ospitato magari, ma non di rado questa eccezione è causata da una query troppo grande che eccede il limite di memoria consentita per l'invio e lo spazio di dati da gestire.

     

    Il miglior modo per risolvere "MySQL server has gone away in" è: aumentare lo spazio di memoria per l'invio e la gestione delle richieste, andate nel file di configurazione my.ini (che si trova nella cartella bin di installazione di MySql), sotto i settaggi [mysqld] (# The MySQL server) cercate la direttiva (riga):

    max_allowed_packet = 2M

    e sostituite il valore di 2 o 4 MegaByte (a seconda la versione di MySql installata) con uno più appropriato per gestire grandi richieste di dati, probabilmente 16Mb possono essere più che sufficienti, in questo modo:

    max_allowed_packet = 16M

    Dopodiché salvate e riavviate il servizio MySql e tutto dovrebbe andare apposto.

  2. AskDB Staff
    0
    26-06-2024 10:50:19
    Rispondi

    Se avete i giusti permessi di accesso al DB MySql interessato dalla "mysqli_sql_exception MySQL server has gone away in" , potete cambiare le dimensioni dei max_allowed_packet consentiti, anche tramite l'istruzione SQL o direttiva da linea di comando

    set global max_allowed_packet=128000000;

    che equivalgono a 16M in bit.

Rispondi

Per poter rispondere a questa domanda, devi essere registrato e loggato sul sito, dopodichè compila il box sottostante cercando di essere il più chiaro ed esauriente possibile, la tua risposta potrebbe essere la soluzione che l'utente cerca ed essere contrassegnata come migliore, consentendoti così di ottenere punti ed autorevolezza.

AskDB Staff

AskDB Staff

Autore di questa domanda

 Domanda Precedente

 Elenco Domande 

Domanda Successiva