MySQL-Fehler „Vorbereitete Anweisung muss erneut vorbereitet werden“
Problem:
Bei der Migration Beim Senden einer PHP-basierten Website mit gespeicherten MySQL-Prozeduren an einen Hosting-Server stoßen Benutzer wiederholt auf schwerwiegende Fehler mit der Meldung „Vorbereitete Anweisung muss ausgeführt werden.“ neu vorbereitet werden.“ Dieses Problem tritt inkonsistent auf und führt zu abwechselnd erfolgreichen und fehlgeschlagenen Seitenladevorgängen.
Antwort:
Die zugrunde liegende Ursache ist ein bekannter MySQL-Fehler (#42041), der mit dem table_definition_cache zusammenhängt Einstellung. MySQL empfiehlt, den Wert dieses Parameters zu erhöhen, um das Problem zu beheben.
Lösung:
Anweisungs-Caching verstehen:
MySQL nutzt Anweisungs-Caching, um die Leistung zu verbessern, indem zuvor ausgeführte Anweisungen im Speicher gespeichert werden. Wenn eine ähnliche Anweisung auftritt, wird die zwischengespeicherte Version abgerufen, wodurch der Aufwand für das erneute Parsen und Kompilieren verringert wird. Durch Erhöhen des Werts von table_definition_cache kann MySQL mehr Tabellendefinitionen zwischenspeichern, wodurch die Wahrscheinlichkeit der Wiederverwendung zwischengespeicherter Anweisungen erhöht und der Fehler „Vorbereitete Anweisung muss erneut vorbereitet werden“ gemindert wird.
Zusätzliche Ressourcen:
Das obige ist der detaillierte Inhalt vonWarum zeigt meine MySQL-Anwendung immer wieder an: „Vorbereitete Anweisung muss erneut vorbereitet werden'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!