it-swarm.com.de

Maximale Ausführungszeit in phpMyadmin

Wenn ich versuche, (einige) Abfragen in phpMyadmin auszuführen, erhalte ich diesen Fehler

Schwerwiegender Fehler: Die maximale Ausführungszeit von 60 Sekunden wurde in .__ überschritten. C:\xampp\phpmyadmin\libraries\dbi\mysql.dbi.lib.php in Zeile 140

weil ich eine sehr große Tabelle habe (über 9 Millionen Datensätze)

Ich habe die Datei C:\xampp\php\php.ini bearbeitet 

und änderte den Wert von "max execution time" von 60 auf 1000, startet dann PHP neu und hat immer noch den gleichen Fehler.

Irgendeine Lösungsmöglichkeit?

90
ahmed

Ich habe den gleichen Fehler, bitte gehe zu

xampp\phpMyAdmin\libraries\config.default.php

Suchen Sie nach: $cfg['ExecTimeLimit'] = 600;

Sie können '600' auf einen höheren Wert ändern, z. B. '6000'.

Die maximale Ausführungszeit in Sekunden ist (0 für kein Limit). 

Dies wird Ihren Fehler beheben.

162
user1900623

Für Xampp-Version unter Windows

Fügen Sie diese Zeile zu xampp\phpmyadmin\config.inc.php hinzu

$cfg['ExecTimeLimit'] = 6000;

Und ändern Sie xampp\php\php.ini in

post_max_size = 750M 
upload_max_filesize = 750M   
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M

Und ändern Sie xampp\mysql\bin\my.ini

max_allowed_packet = 200M
91
M_R_K

Ich habe das gleiche Problem gehabt, als ich eine Curl ausgeführt habe ... Ich habe es richtig verstanden, als ich Folgendes in der php.ini-Datei geändert habe:

max_execution_time = 1000 ;

und auch 

max_input_time = 1000 ;

Wahrscheinlich sollte Ihr Problem gelöst werden, indem Sie zwei Änderungen vornehmen und den Apache-Server neu starten.

Auch nach dem Ändern des obigen Problems bleibt das Problem bestehen und wenn Sie der Meinung sind, dass es sich um eine Datenbankoperation mit mysql handelt, können Sie auch dies ändern:

mysql.connect_timeout = 1000 ; // this is not neccessary

All dies sollte in der php.ini-Datei geändert werden und der Apache-Server sollte .__ sein. neu gestartet, um die Änderungen zu sehen.

13
Sony Mathew

Ihre Änderung sollte funktionieren, jedoch gibt es möglicherweise einige php.ini-Konfigurationsdateien mit dem 'xampp'-Stack. Versuchen Sie herauszufinden, ob es eine Apache-spezifische php.ini gibt. Ein möglicher Standort ist:

C:\xampp\Apache\bin\php.ini

6
Brian

Das Ändern von php.ini für eine Webanwendung erfordert einen Neustart von Apache.

Sie sollten sicherstellen, dass die Änderung stattgefunden hat, indem Sie ein Skript PHP ausführen, das die Funktion phpinfo() ausführt. Die Ausgabe dieser Funktion zeigt Ihnen viele PHP - Parameter, einschließlich des Timeout-Werts.

Möglicherweise haben Sie auch eine Kopie von php.ini geändert, bei der es sich nicht um dieselbe Datei handelt, die von Apache verwendet wird.

4
Bill Karwin

ini_set('max_execution_time', 0); oder erstellen Sie einen Dateinamen namens php.ini und geben Sie die erste Zeile max_execution_time=0 ein, speichern Sie sie und legen Sie die Datei in Ihrem Stammordner Ihrer Anwendung ab.

Das ist es. Viel Glück.

3
Karthikeyan

In php.ini müssen Sie entweder mysql.connect_timeout überprüfen. Dies ist für das Schließen der Socket und die Rückgabe des Fatal verantwortlich Ändern Sie es beispielsweise in:

mysql.connect_timeout = 3600

Diese Zeit wird immer in Sekunden gezählt. In meinem Beispiel haben Sie 1 Stunde.

2
andymnc

Gut für Wamp-User,

Gehe zu: wamp\apps\phpmyadmin3.3.9\libraries

Unter Zeile 536 locate $cfg['ExecTimeLimit'] = 0;

und ändern Sie den Wert von 0 auf 6000. z

$cfg['ExecTimeLimit'] = 0;

Zu

$cfg['ExecTimeLimit'] = 6000;

Starten Sie Wamp Server und Puh neu.

Es funktioniert wie Magie!

1

Wahrscheinlich verwenden Sie XMAPP als Dienst. Um XMAPP ordnungsgemäß neu zu starten, müssen Sie das XMAPP-Kontrollfeld öffnen und die beiden "Svc" -Module gegen Apache und MySQL deaktivieren. Klicken Sie dann auf "Beenden". Starten Sie XMAPP jetzt neu und Sie sind fertig. 

1
Jamal

'NULL' für unbegrenzte Zeit.

C:\Apache24\htdocs\phpmyadmin\libraries\Config.class.php

/**
 * maximum execution time in seconds (0 for no limit)
 *
 * @global integer $cfg['ExecTimeLimit']
 */
$cfg['ExecTimeLimit'] = 0;

Sie können die große Datei auch direkt aus MySQL als Abfrage oder als Abfrage PHP importieren.

Es dauerte nur 18 Sekunden, bis 500.000 Zeilen auf dem lokalen Server importiert wurden.

(erst Tabelle anlegen) - dann:

LOAD DATA LOCAL INFILE 'Path_To_Your_File.csv' 
INTO TABLE Your_Table_Name 
FIELDS TERMINATED BY ',' 
LINES TERMINATED BY '\n' 
1
KDawg

Gehe zu xampp/php/php.ini

Finden Sie diese Zeile:

max_execution_time=30

Und ändern Sie den Wert in eine beliebige Zahl. Starten Sie Apache neu.

0
KeepMove

Bei WAMP funktionierte für mich das Ändern der Datei: \Wamp64\alias\phpmyadmin.conf, Zeilen:

 php_admin_value max_execution_time 600
 php_admin_value max_input_time 600

Ich musste die Bibliotheksdatei nicht ändern.

0
Casso