Quand j'essaye d'exécuter (quelques) requêtes dans phpMyadmin, j'obtiens cette erreur
Erreur fatale: Le temps d'exécution maximal de 60 secondes a été dépassé dans C:\xampp\phpmyadmin\libraries\dbi\mysql.dbi.lib.php à la ligne 140
parce que j'ai une très grande table (plus de 9 millions de disques)
J'ai édité le fichier C:\xampp\php\php.ini
et changé la valeur de "max run time" de 60 à 1000 puis redémarre le PHP et continue à avoir la même erreur.
Toute solution?
J'ai la même erreur, s'il vous plaît aller à
xampp\phpMyAdmin\libraries\config.default.php
Recherchez: $cfg['ExecTimeLimit'] = 600;
Vous pouvez remplacer "600" par une valeur plus élevée, telle que "6000".
La durée maximale d'exécution en secondes est (0 pour aucune limite).
Cela corrigera votre erreur.
Pour la version Xampp sous Windows
Ajouter cette ligne à xampp\phpmyadmin\config.inc.php
$cfg['ExecTimeLimit'] = 6000;
Et changer xampp\php\php.ini en
post_max_size = 750M
upload_max_filesize = 750M
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M
Et changez xampp\mysql\bin\my.ini
max_allowed_packet = 200M
J'ai rencontré le même problème lors de l'exécution d'une boucle . Je l'ai bien compris lorsque j'ai modifié les éléments suivants dans le fichier php.ini
:
max_execution_time = 1000 ;
et aussi
max_input_time = 1000 ;
Votre problème devrait probablement être résolu en apportant les modifications ci-dessus et en redémarrant le serveur Apache.
Même après avoir modifié ce qui précède, le problème persiste et si vous pensez que cela est dû à une opération de la base de données utilisant mysql, vous pouvez essayer de le modifier également:
mysql.connect_timeout = 1000 ; // this is not neccessary
Tout cela devrait être changé dans le fichier php.ini et le serveur Apache devrait être redémarré pour voir les changements.
Votre modification devrait fonctionner, mais il existe potentiellement quelques fichiers de configuration php.ini avec la pile 'xampp'. Essayez d'identifier s'il existe ou non un php.ini spécifique à 'Apache'. Un emplacement potentiel est:
C:\xampp\Apache\bin\php.ini
Changer php.ini
pour une application Web nécessite de redémarrer Apache.
Vous devez vérifier que la modification a eu lieu en exécutant un script PHP qui exécute la fonction phpinfo()
. La sortie de cette fonction vous indiquera de nombreux paramètres PHP, y compris la valeur de délai d'attente.
Vous avez peut-être également modifié une copie de php.ini
qui n’est pas le même fichier que celui utilisé par Apache.
ini_set('max_execution_time', 0);
ou créez un nom de fichier appelé php.ini
et entrez la première ligne max_execution_time=0
puis enregistrez-le et placez le fichier dans le dossier racine de votre application.
C'est tout. Bonne chance.
Dans php.ini, vous devez vérifier mysql.connect_timeout non plus. C'est responsable de la fermeture du socket et de la restitution de Fatal . Ainsi, par exemple, changez-le en:
mysql.connect_timeout = 3600
Ce temps sera toujours compté en secondes, donc dans mon exemple, vous avez 1 heure.
Bien pour l'utilisateur de Wamp,
Aller à: wamp\apps\phpmyadmin3.3.9\libraries
Sous la ligne 536, locate $cfg['ExecTimeLimit'] = 0;
et changez la valeur de 0 à 6000. p.ex.
$cfg['ExecTimeLimit'] = 0;
À
$cfg['ExecTimeLimit'] = 6000;
Redémarrez le serveur wamp et phew.
Cela fonctionne comme par magie!
Probablement que vous utilisez XMAPP en tant que service, pour redémarrer XMAPP correctement, vous devez ouvrir le panneau de configuration de XMAPP en vérifiant les deux mdodules "Svc" avec Apache et MySQL. Cliquez ensuite sur quitter, redémarrez maintenant XMAPP et vous avez terminé.
"ZERO" pour un temps illimité.
C:\Apache24\htdocs\phpmyadmin\libraries\Config.class.php
/**
* maximum execution time in seconds (0 for no limit)
*
* @global integer $cfg['ExecTimeLimit']
*/
$cfg['ExecTimeLimit'] = 0;
Vous pouvez également importer le fichier volumineux directement depuis MySQL sous forme de requête ou de requête PHP.
500 000 lignes m'ont juste pris 18 secondes pour importer sur un serveur local, en utilisant cette méthode.
(commencez par créer la table) - puis:
LOAD DATA LOCAL INFILE 'Path_To_Your_File.csv'
INTO TABLE Your_Table_Name
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
Aller au xampp/php/php.ini
Trouvez cette ligne:
max_execution_time=30
Et changez sa valeur en un nombre que vous voulez. Redémarrez Apache.
Ce qui a fonctionné pour moi sur WAMP était la modification du fichier: \Wamp64\alias\phpmyadmin.conf, lignes:
php_admin_value max_execution_time 600
php_admin_value max_input_time 600
Je n'ai pas eu à changer le fichier de bibliothèque.