Ändern Sie die max_allowed_packet Size im MySQL-Server

Mehvish Ashiq 20 Juni 2023
  1. Ändern Sie die max_allowed_packet-Größe im MySQL-Server
  2. Ändern Sie die max_allowed_packet-Größe im MySQL-Server unter Verwendung des Windows-Betriebssystems
  3. Ändern Sie die max_allowed_packet-Größe im MySQL-Server mit Ubuntu OS
Ändern Sie die max_allowed_packet Size im MySQL-Server

Dieses Tutorial zeigt, wie man die max_allowed_packet-Größe im MySQL-Server ändert. Um das zu lernen, verwenden wir zwei Betriebssysteme, Windows 10 und Linux (Ubuntu).

Ändern Sie die max_allowed_packet-Größe im MySQL-Server

Wenn wir versuchen, Dateien hochzuladen, die größer als der Standardwert von max_allowed_packet sind, erhalten wir die Fehlermeldung Pakete, die größer als max_allowed_packet sind, sind nicht erlaubt.

Um diesen Fehler zu beseitigen, müssen wir die Grösse von max_allowed_packet ändern. Aber vorher überprüfen wir den Standardwert wie folgt.

mysql> SHOW VARIABLES LIKE 'max_allowed_packet';

Ausgang:

+--------------------+---------+
| Variable_name      | Value   |
+--------------------+---------+
| max_allowed_packet | 4194304 |
+--------------------+---------+
1 row in set (0.06 sec)

Im Moment beträgt die Größe von max_allowed_packet 4 MB, was 4194304 Bytes entspricht. In Anbetracht der MySQL Docs haben MySQL-Client und -Server ihre eigene max_allowed_packet-Größe.

Der Wert, den wir oben sehen, verwendet das SHOW VARIABLES LIKE 'max_allowed_packet'; query ist der Wert auf der Seite des MySQL-Servers. Es ist notwendig, den Wert von max_allowed_packet zu erhöhen, wenn wir die grösseren Pakete verarbeiten wollen.

Angenommen, wir möchten es auf 50 MB ändern. Wir können dies tun, indem wir die Konfigurationsdatei auf der Serverseite (ein Abschnitt namens [mysqld] in der Datei my.ini) sowie auf der Clientseite (ein Abschnitt namens [mysql] oder [client] in der Datei my.ini).

Wir können diese Einstellung auch mit einer SQL-Abfrage ändern, wenn wir ein SUPER-Privileg (Berechtigung) haben. Wie? Sehen wir uns unten beide Lösungen an.

Ändern Sie die max_allowed_packet-Größe im MySQL-Server unter Verwendung des Windows-Betriebssystems

  1. Öffnen Sie die Windows-Befehlszeile und navigieren Sie zum Installationspfad. MySQL Server wird unter C:\Programme\MySQL\MySQL Server 8.0 installiert, wenn Sie den Standardspeicherort nicht geändert haben.

  2. Wechseln Sie mit cd bin in den Ordner bin.

  3. Geben Sie mysql -u root -p password ein, um sich beim MySQL-Server anzumelden. Wir steigen als root-Benutzer ein; Sie können Ihren Benutzernamen und Ihr Passwort verwenden.

  4. Sobald wir drin sind, führen Sie die folgende Abfrage aus, um die max_allowed_packet-Größe in MySQL Server zu ändern.

    mysql> SET GLOBAL max_allowed_packet=52428800;
    
  5. Führen Sie die folgende Abfrage erneut aus, um die Änderung zu bestätigen.

    mysql> SHOW VARIABLES LIKE 'max_allowed_packet';
    

    Ausgang:

    +--------------------+---------+
    | Variable_name      | Value   |
    +--------------------+---------+
    | max_allowed_packet | 52428800|
    +--------------------+---------+
    1 row in set (0.00 sec)
    

Die unten angegebene Lösung verwendet die Konfigurationsdatei, die sich im Standardpfad befindet, wenn Sie MySQL Server am Standardspeicherort installiert haben. Der Pfad der Konfigurationsdatei ist C:\ProgramData\MySQL\MySQL Server 8.0\my.ini.

  1. Öffnen Sie die Datei my.ini.

  2. Suchen Sie nach dem Abschnitt [mysqld] und fügen Sie eine folgende Zeile unter diesem Abschnitt hinzu.

    max_allowed_packet=50M
    
  3. Speichern und schließen Sie die Datei.

  4. Starten Sie den MySQL-Server neu, um die Änderung anzuzeigen.

Ändern Sie die max_allowed_packet-Größe im MySQL-Server mit Ubuntu OS

Nachdem wir in MySQL Server eingestiegen sind, können wir die gleichen Abfragen auf Ubuntu verwenden, die wir für das Windows-Betriebssystem verwendet haben. Die Schritte sind unten angegeben.

  1. Öffnen Sie Ubuntu Terminal und verwenden Sie sudo su, um sich als Superuser anzumelden.

  2. Melden Sie sich außerdem bei MySQL Server an.

  3. Es empfiehlt sich, den Standard- oder vorherigen Wert einer Variablen zu überprüfen, bevor Sie Änderungen vornehmen. Dafür können wir die folgende Abfrage verwenden.

    mysql> SHOW VARIABLES LIKE 'max_allowed_packet';
    

    Ausgang:

    +--------------------+---------+
    | Variable_name      | Value   |
    +--------------------+---------+
    | max_allowed_packet | 67108864|
    +--------------------+---------+
    1 row in set (0.00 sec)
    
  1. Führen Sie die folgende Abfrage aus, um den Wert von max_allowed_packet auf 70 MB zu aktualisieren, was 73400320 Bytes entspricht.

    mysql> SET GLOBAL max_allowed_packet=73400320;
    
  2. Wir können das SHOW VARIABLES LIKE 'max_allowed_packet'; ausführen Abfrage, um zu bestätigen, ob die Änderung erfolgt.

Wenn Sie die Konfigurationsdateien sehr gut bearbeiten können, ist die folgende Lösung besonders für Sie geeignet.

  1. Öffnen Sie die Konfigurationsdatei im Pfad /etc/mysql/mysql.conf.d/mysqld.cnf.

    $ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
    
  2. Suchen Sie nach dem max_allowed_packet unter einem Abschnitt namens [mysqld] und ändern Sie seinen Wert auf Ihre Wahl. Wenn es nicht dort ist, fügen Sie die folgende Zeile unter [mysqld] hinzu.

    Denken Sie daran, wir ändern es auf 70 Millionen. Aber Sie können Ihre Nummer schreiben.

    max_allowed_packet=70M
    
  3. Speichern und beenden Sie die Datei.

  4. Verwenden Sie systemctl restart mysql, um den MySQL-Server neu zu starten, und führen Sie Folgendes aus, um die Aktualisierung sicherzustellen.

    mysql> SHOW VARIABLES LIKE 'max_allowed_packet';
    

    Ausgang:

    +--------------------+---------+
    | Variable_name      | Value   |
    +--------------------+---------+
    | max_allowed_packet | 73400320|
    +--------------------+---------+
    1 row in set (0.03 sec)
    
Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook

Verwandter Artikel - MySQL Server