[Alleen PaaS]{class="badge informative" title="Is alleen van toepassing op Adobe Commerce op Cloud-projecten (door Adobe beheerde PaaS-infrastructuur) en op projecten in het veld."}

Problemen met /tmp-montage oplossen: vol voor Adobe Commerce

Dit artikel biedt een oplossing voor het geval dat de /tmp -montage vol is, de site mogelijk is ingedrukt en u geen SSH in een knooppunt kunt plaatsen.

Betrokken producten en versies

  • Adobe Commerce 2.3.0 - 2.3.6-p1, 2.4.0 - 2.4.2

Probleem

Als de /tmp -hoeveelheid vol is, kan dit leiden tot een reeks mogelijke symptomen, waaronder de volgende fouten:

  • SQLSTATE [ HY000 ]: Algemene fout: 3 Fout die dossier schrijft
  • code van de Fout: 28
  • Geen ruimte verlaten op apparaat (28)
  • fout session_start (): ontbroken: Geen ruimte verlaten op apparaat
  • FOUT 1 (HY000): Kan niet tot stand brengen/schrijven aan dossier '/tmp/
  • SQL Fout: 3, SQLState: HY000
  • Algemene fout: 1021 volledige Schijf (https://experienceleague.adobe.com/tmp?lang=nl)
  • Onbekwaam om tot knoop via SSH toegang te hebben:
    bash: kan geen tijdelijk dossier voor hier-document creëren: Geen ruimte verlaten op apparaat
  • fout: 28 "Geen ruimte verlaten op apparaat"
  • mysqld: De schijf is volledig schrijvend '/tmp'
  • [FOUT ] mysqld: Volledige schijf (https://experienceleague.adobe.com/tmp?lang=nl)
  • SQLSTATE [ HY000 ]: Algemene fout: 1 kan niet tot stand brengen/schrijven aan dossier "/tmp/"
  • SQLSTATE [ HY000 ]: Algemene fout: 23 uit middelen wanneer het openen van dossier '/tmp/'
  • Erkenning: 24 "Te veel open dossiers"
  • Kreeg fout: 23: Uit middelen wanneer het openen van dossier

Stappen om te reproduceren:

Als u wilt controleren hoe vol de /tmp -hoeveelheid is, schakelt u in de CLI over naar /tmp en voert u de volgende opdracht uit:

 df -h

Verwacht resultaat :

Minder dan 80%.

Werkelijk resultaat :

Ongeveer 100%.

Oorzaak

Het /tmp -aantal heeft te veel bestanden, die kunnen worden veroorzaakt door:

  • Onjuiste SQL-query's die grote en/of te veel tijdelijke tabellen genereren.
  • Services die naar de map /tmp schrijven.
  • Back-ups/dumps van databases blijven beschikbaar in de map /tmp .

Oplossing

Er zijn dingen die u kunt doen om enige ruimte één keer vrij te maken, en er zijn beste praktijken die \tmp zouden verhinderen volledig te worden.

Inodes controleren en vrijmaken

Zorg ervoor dat er voldoende inodes beschikbaar zijn. Voer hiertoe de volgende opdracht uit:

df -i

De uitvoer ziet er ongeveer als volgt uit:

Filesystem Inodes   Used   Free Use% Mounted on
/dev/nvme2n1 655360    1695  653665    1% /data/mysql

Controleer of Use% <70% is. De knooppunten zijn gecorreleerd met bestanden. Als u bestanden uit de partitie verwijdert, worden de inodes vrijgemaakt.

Opslagruimte controleren en vrijmaken

Er zijn verschillende services die bestanden kunnen opslaan in /tmp .

MySQL-ruimte inchecken en vrijmaken

Volg de instructies in MySQL schijfruimte is laag op Adobe Commerce op de infrastructuur van de wolk > Controle en bevrijd opslagruimtein onze basis van de steunkennis.

Hapdumpen van Elasticsearch controleren

WARNING
Heapdumps bevatten logboekinformatie die nuttig zou kunnen zijn voor het onderzoeken van kwesties. U kunt overwegen ze ten minste 10 dagen op een aparte locatie op te slaan.

Verwijder heapdumps (*.hprof) met behulp van systeemshell:

find /tmp/*.hprof -type f -delete

Als u geen toestemmingen hebt om dossiers te schrappen die door een andere gebruiker (in dit geval, Elasticsearch) worden gecreeerd, maar u ziet dat de dossiers groot zijn, te creëren gelieve een steunkaartjeom hen te behandelen.

Database-dumps/back-ups controleren

WARNING
De steunen van het gegevensbestand worden gewoonlijk gecreeerd voor een doel. Als u niet zeker weet of het bestand nog steeds nodig is, kunt u het naar een andere locatie verplaatsen in plaats van het te verwijderen.

Controleer /tmp op .sql - of .sql.gz -bestanden en pas deze op. Deze zijn mogelijk gemaakt met behulp van de versnellingsprogramma's tijdens een back-up of tijdens het handmatig maken van databasedumps met het gereedschap mysqldump .

Aanbevolen procedures

Volg de onderstaande aanbevelingen om problemen met /tmp als vol te voorkomen:

  • Gebruik MySQL niet voor zoekopdrachten. Elasticsearch voor onderzoek elimineert gewoonlijk de behoefte aan de meeste zware tijdlijstverwezenlijking. Zie Adobe Commerce vormen om Elasticsearchin onze ontwikkelaarsdocumentatie te gebruiken.

  • Vermijd het uitvoeren van de query SELECT op kolommen zonder indexen aangezien dit een grote hoeveelheid tijdelijke schijfruimte gebruikt. U kunt ook de indexen toevoegen.

  • Maak een uitsnede om op te schonen /tmp door de volgende opdracht in de CLI uit te voeren:

    code language-bash
    sudo find /tmp -type f -atime +10 -delete
    

Gerelateerde lezing

MySQL schijfruimte is laag op Adobe Commerce op wolkeninfrastructuurin onze basis van steunkennis.

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a