Fehlerbehebung bei MySQL-Fehler: „Vorbereitete Anweisung muss erneut vorbereitet werden“
Bei der Migration einer Website mit geändertem PHP-Code und gespeicherten MySQL-Prozeduren Von einer lokalen Umgebung auf einen Hosting-Server hat ein anhaltender schwerwiegender Fehler, „‚Vorbereitete Anweisung muss erneut vorbereitet werden‘“, den Betrieb der Website beeinträchtigt.
Ursache des Fehlers:
Das zugrunde liegende Problem könnte mit dem MySQL-Fehler #42041 zusammenhängen, der sich auf das Caching vorbereiteter Anweisungen auswirkt. Wenn das Statement-Caching nicht ausreicht, kann der Server vorbereitete Statements nach einem Neustart möglicherweise nicht wiederverwenden, was zu dem Fehler führt.
Lösung:
Die Lösung liegt in der Anpassung des Servers table_definition_cache Variable. Diese Variable legt die maximale Anzahl von Tabellen fest, deren Definitionen im Speicher zwischengespeichert werden. Indem Sie den Wert erhöhen, können Sie mehr zwischengespeicherte vorbereitete Anweisungen aufnehmen und möglicherweise den Fehler beheben.
Implementierung:
Um den table_definition_cache-Wert zu ändern, führen Sie die folgenden Schritte aus:
SHOW VARIABLES LIKE 'table_definition_cache';
SET GLOBAL table_definition_cache = <new-value>;
Zusätzliche Ressource:
Weitere Informationen zum Zwischenspeichern vorbereiteter Anweisungen finden Sie in der offiziellen MySQL-Dokumentation:
https://dev.mysql.com/doc/refman/8.0 /de/statement-caching.html
Das obige ist der detaillierte Inhalt vonWarum gibt meine Website nach der Migration den Fehler „Vorbereitete Anweisung muss erneut vorbereitet werden' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!