In MySQL, un pacchetto di comunicazione o un pacchetto si riferisce a una singola istruzione SQL inviata a un server MySQL. Si riferisce inoltre a una riga individuale che ha risposto al registro client o binario da MySQL Server.
Ciò significa che se il client o il server ottiene un pacchetto più grande del parametro set max_allow_packet, restituisce un errore "err_net_packet_too_large". Il server o il client può quindi chiudere la connessione.
Questo articolo dimostrerà come è possibile modificare la dimensione massima del pacchetto sia nel client MySQL che nel server MySQL.
Cos'è Max_allow_packet?
Max_allow_packet è una variabile di sessione che determina il numero di byte inviati o ricevuti in un singolo pacchetto di comunicazione.
Controllare la dimensione del pacchetto consentita massima corrente
Possiamo controllare la dimensione del pacchetto consentita massima ottenendo i valori delle variabili MySQL.
Una query di esempio è mostrata di seguito:
mostra variabili come "max_alloted_packet";
La query sopra dovrebbe restituire la dimensione massima del pacchetto consentita in byte come:
| Variabile_name | Valore |
| ------------------ | -------- |
| max_allowed_packet | 67108864 |
Il nostro esempio mostra che la dimensione del pacchetto consentita massima corrente è 67108864 byte o circa 67 MB.
Ricorda che sebbene MySQL ci consenta di modificare il valore massimo della dimensione del pacchetto consentito, la dimensione del pacchetto più grande possibile è 1 GB.
Cambia max_alloted_packet in mysql
Metodo 1 - Configurazione lato client e server
Dobbiamo modificare le configurazioni sul lato client e sul server per aumentare o ridurre il valore della dimensione del pacchetto MAX_ALLED.
Questo deriva dall'uso da parte di MySQL di valori autonomi sia per MySQLD che per il client. Quindi, il valore che ottieni dalle variabili di spettacolo come il comando 'max_alloted_packet' si riferisce al valore massimo sul lato server.
Per impostare il valore massimo sul lato client, possiamo eseguire il comando:
mysql -u root -p -max_allowed_packet = 100m
Il comando sopra imposta la dimensione del pacchetto su 100 MB sul lato client.
Si noti che il pacchetto Max predefinito consentito sul lato client è 16 MB.
Sul lato del server, modifica la dimensione del pacchetto come:
mysqld -u root -p -max_allowed_packget = 128m
Si noti che il pacchetto massimo predefinito STHE consentito sul lato server è di 64 MB.
Metodo 2 - lato server senza riavvio
Se hai privilegi super sul server, è possibile modificare il valore del pacchetto Max utilizzando il comando set globale come:
Imposta Global Max_Allowed_Packet = 128.000.000;
Ciò aumenta il valore Max_Allowed_Packget a 128 MB senza riavviare il server. Tuttavia, richiede super privilegi.
Metodo 3 - Modifica del file di configurazione
Un altro metodo che puoi utilizzare per aumentare o ridurre il pacchetto massimo consentito è modificare il file di configurazione.
Nella directory di installazione MySQL, individua il mio.File ini (Windows). Per impostazione predefinita, il file si trova in C: \ ProgramData \ mysql \ mysql Server 8.0
Modifica il file e modifica il valore MAX_ALLED_PACKET sulla dimensione del bersaglio.
Ad esempio, possiamo impostare la dimensione del pacchetto su 128 MB come mostrato:
Salva e chiudi il file. Riavvia il servizio MySQL per ricaricare la nuova configurazione.
In Linux, devi modificare il mysqld.Conf File. Nella maggior parte dei casi, questo file si trova in/etc/mysql/mysqld.conf.d/mysqld.Cnf
Allo stesso modo, modifica e modifica la dimensione MAX_ALLOWED_PACKET sul valore desiderato. Allo stesso modo, riavviare il servizio per ricaricare le modifiche.
Conclusione
In questo articolo, hai imparato cosa è mysql max_allowed_variable, come verificare la dimensione massima del pacchetto consentita e vari metodi per aumentare o diminuire la dimensione del pacchetto.