DocumentatieCommerceCommerce KB

Alleen PaaS

Databasefouten met betrekking tot max_allowed_packet op Adobe Commerce

Laatst bijgewerkt: 5 mei 2025
  • Onderwerpen:
  • Aanbevolen procedures

Gemaakt voor:

  • Ontwikkelaar

Dit artikel biedt een oplossing voor databaseverbindingsfouten in de var/log/exception.log die kunnen optreden wanneer u een groot aantal producten importeert of een andere taak uitvoert die de server dwingt grotere pakketten af te handelen dan in max_allowed_packet is ingesteld, die groter is dan de standaardwaarde (16 MB).

Betrokken producten en versies

  • Adobe Commerce op-gebouw, alle gesteunde versies

Probleem

Wanneer een MySQL cliënt of de mysqldserver een pakket groter dan max_allowed_packetbytes ontvangt, geeft het een ER_NET_PACKET_TOO_LARGEfout uit (die in exception.log) kan worden gezien en sluit de verbinding. Met sommige cliënten, kunt u a Verloren verbinding aan MySQL server tijdens vraag fout ook krijgen als het communicatie pakket te groot is.

Stappen om te reproduceren

Dit probleem kan worden veroorzaakt door verschillende taken. Dit kan het proberen om een groot aantal producten in Adobe Commerce in te voeren of transactievragen omvatten die teveel gegevens terugsturen. Het resultaat is een fout in de databaseverbinding in var/log/exception.log en andere problemen, zoals producten die niet correct zijn geïmporteerd.

Oorzaak

De standaardwaarde van 16 MB voor de instelling MySQL max_allowed_packets is niet groot genoeg voor uw behoeften.

Oplossing

  1. Identificeer vragen waar de individuele rijen de huidige max_allowed_packet grens overschrijden. Dergelijke vragen moeten worden herschreven om de hoeveelheid terug te geven gegevens te verminderen. Dit kan door een kleiner aantal kolommen in de SELECT verklaring te hebben of een kleiner gegevenstype voor diverse kolommen als deel van het lijstontwerp te kiezen. Als u een rekening van New Relic hebt, gebruik de pagina van de Fouten van New Relic APMen de pagina van de Gegevensbestanden van New Relic APM, en Logs van New Relicom naar de relevante vragen te zoeken.

  2. Voor snelle sanering, kunt u tijdelijk verzoeken om de max_allowed_packet grootte om worden verhoogd wanneer u een kaartjevoorlegt, maar dit is bij de discretie van het team van de Techniek van de Klant, aangezien te groot van een waarde replicatiefouten kan veroorzaken door netwerkcongestie te veroorzaken.

  3. Als beste praktijken, zou u het volgende bevel in uw CLI voor sommige van uw grote gegevensbestandlijsten moeten in werking stellen:

    show table status like [table name to match]
    

    Evalueer de vragen die op deze lijsten lopen om te bepalen als u de geadviseerde max_allowed_packet grootte van 16MB overschrijdt. Volg het zelfde proces in stap één om de gegevens te verminderen die door dergelijke vragen worden teruggegeven.

Gerelateerde lezing

  • op-gebouw installatieoverzichtin onze ontwikkelaarsdocumentatie.
  • uploadt het Gegevensbestand verliest verbinding aan MySQLin onze basis van de steunkennis.
  • beste praktijken van het Gegevensbestand voor Adobe Commerce op wolkeninfrastructuurin onze basis van steunkennis.
  • Beste praktijken om de kwesties van gegevensbestandprestatiesin onze basis van de steunkennis op te lossen.
  • Beste praktijken voor het wijzigen van gegevensbestandlijstenin het Playbook van de Implementatie van Commerce
recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a