MySQL-Abfrage beendet, aber PHP merkt es nicht
Hallo
Ich haben einen Cronjob, der unter Anderem mehrere große und kleine Tabellen kopiert. Dieser lief bisher ohne Probleme, soll aber nun auf einen anderen Server umziehen. Die Tabellen werden mit dem Befehl "INSERT INTO ... SELECT" kopiert. Bei einigen größeren Tabellen bekomme ich allerdings nach 7278 bzw. 7001 Sekunden folgende Fehlermeldung: Zitat:
Danach stehen diese in der Proicesslist als "Sleep". Im MySQL-Error-Log findet sich folgender Eintrag: Zitat:
Ich hab schon die Option "max_allowed_packet" auf 256M erhöht (Einstellung bisheriger Server), ohne dass es funktioniert hat. Für weitere Ideen und Vorschläge wäre ich dankbar. |
AW: MySQL-Abfrage beendet, aber PHP merkt es nicht
Zitat:
Eine Abfrage über 20 Minuten (1200 Sek) ist nichts, was man mit PHP erledigt. |
AW: MySQL-Abfrage beendet, aber PHP merkt es nicht
Die Abfrage ist eben Teil eines Cronjobs der Daten über PHP verarbeitet, diese in eine Tabelle schreibt und diese anschließend kopiert, damit die Inhalte weiter verarbeitet werden können.
Gegenüber Vorschlägen, wie man das anders/besser macht, bin ich nicht abgeneigt. |
AW: MySQL-Abfrage beendet, aber PHP merkt es nicht
20 Minuten ist zu viel, dafür ist PHP eigentlich nicht gemacht.
Ich würde das entweder aufteilen oder (so wäre das mein Weg) als sql-Script auf Shell-Ebene laufen lassen. Alternativ, wenn es unbedingt PHP sein muss, kann man das in einer CLI aufrufen und dafür die php.ini entsprechend anpassen. |
Alle Zeitangaben in WEZ +2. Es ist jetzt 08:59:23 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.