Einzelnen Beitrag anzeigen
  #1  
Alt 10.08.2017, 18:05:35
Son Goku Son Goku ist offline
Anfänger
 
Registriert seit: Aug 2017
Alter: 38
Beiträge: 2
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:
Kopiere Tabelle xyz...PHP Warning: mysqli::query(): MySQL server has gone away in /pfad/zum/script.php on line 63

Warning: mysqli::query(): MySQL server has gone away in /pfad/zum/script.php on line 63
PHP Warning: mysqli::query(): Error reading result set's header in /pfad/zum/script.php on line 63

Warning: mysqli::query(): Error reading result set's header in /pfad/zum/script.php on line 63
Fertig! (7278 Sekunden)
Die Abfragen dauern aber je nur ca. 1200 Sekunden.
Danach stehen diese in der Proicesslist als "Sleep".

Im MySQL-Error-Log findet sich folgender Eintrag:

Zitat:
[Note] Aborted connection 35 to db: 'datenbankname' user: 'username' host: '127.0.0.1' (Got timeout reading communication packets)
Den Rest der Zeit passiert nix.

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.
Mit Zitat antworten