2009-08-12 43 views
69

Cuando intento ejecutar (algunos) consultas en phpMyadmin me sale este errorEl tiempo máximo de ejecución en phpMyadmin

Fatal error: Maximum execution time of 60 seconds exceeded in C:\xampp\phpmyadmin\libraries\dbi\mysql.dbi.lib.php on line 140

porque tengo una mesa muy grande (más de 9 millones de registros)

He editado el archivo C: \ xampp \ php \ php.ini

y cambió el valor de "tiempo máximo de ejecución" de 60 a 1000 luego reinicia el PHP y aún tiene el mismo error.

¿Alguna solución?

+0

Debe requerir reiniciar su servidor. Después de cambiar en config o ini archivo. – 4302836

Respuesta

132

que tienen el mismo error, por favor vaya a

xampp\phpMyAdmin\libraries\config.default.php

buscar: $cfg['ExecTimeLimit'] = 600;

Usted puede cambiar '600' a cualquier valor más alto, como '6000'.

El tiempo máximo de ejecución en segundos es (0 sin límite).

Esto solucionará su error.

+1

Puede usar el formato de código para aclarar qué es código y qué no) :) – span

+1

$ cfg ['ExecTimeLimit'] = 6000; funcionó para mí – emre

+16

Está bastante claro (en el encabezado del archivo) que no debe editar este archivo. En su lugar, debe editar config.inc.php, agregando esta línea, como dice en otra respuesta – dsnunez

6

Su cambio debería funcionar, aunque hay potencialmente algunos archivos de configuración php.ini con la pila 'xampp'. Intente identificar si hay un php.ini específico de 'apache'. Una posible ubicación es:

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

+1

en mi xampp ese archivo en 'C: \ xampp \ php \ php.ini' y pase el número de línea * 442 * (aproximadamente - algún tiempo ese número de línea se cambiará después de la edición manual) ' max_execution_time = 1000' pero esto no es trabajo para mi Entonces probaré esto en C: \ xampp \ phpMyAdmin \ config.inc.php '$ cfg ['Servers'] [$ i] ['bs_temp_blob_timeout'] = 1200;' – Elshan

4

Cambio php.ini para una aplicación web requiere reiniciar Apache.

Debe verificar que el cambio haya tenido lugar ejecutando un script PHP que ejecuta la función phpinfo(). La salida de esa función le dirá una gran cantidad de parámetros de PHP, incluido el valor de tiempo de espera.

Es posible que también haya cambiado una copia de php.ini que no es el mismo archivo utilizado por Apache.

3

ini_set('max_execution_time', 0); o cree un nombre de archivo llamado php.ini y escriba la primera línea max_execution_time=0, guárdela y coloque el archivo en la carpeta raíz de su aplicación.

Eso es todo. Buena suerte.

+3

Hay un 'set_time_limit()' función. No es necesario (ab) usar 'ini_set()'. – ThiefMaster

1

Probabily está utilizando XMAPP como servicio, para reiniciar XMAPP correctamente, debe abrir el panel de control de XMAPP para anular los módems "Svc" de Apache y MySQL. Luego haga clic en salir, ahora reinicie XMAPP y listo.

10

Me enfrenté al mismo problema al ejecutar un rizo. lo tengo razón cuando he cambiado lo siguiente en el archivo de php.ini:

max_execution_time = 1000 ; 

y también

max_input_time = 1000 ; 

Probablemente el problema debe ser resuelto haciendo por encima de dos cambios y reiniciar el servidor Apache.

Incluso después de cambiar lo anterior, el problema persiste y si cree que es debido a alguna operación de base de datos utilizando MySQL puede intentar cambiar esto también:

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

All this should be changed in php.ini file and apache server should be restarted to see the changes.

77

Para la versión XAMPP en Windows

Añadir esta línea para xampp \ phpmyadmin \ config.inc.php

$cfg['ExecTimeLimit'] = 6000; 

y el cambio xampp \ php \ php. ini a

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

Y cambiar xampp \ mysql \ bin \ my.ini

max_allowed_packet = 200M 
+1

He estado teniendo exactamente los mismos problemas, excepto con un conjunto de datos mucho más pequeño (~ 120k filas) - su respuesta definitivamente hizo las cosas mucho mejor :). – Rob

+2

Esto funcionó para mí. Win 7 64 bit. – Tom

+0

Obtuve el tiempo de espera del script para xampp para Windows al instante cuando presiono Examinar en una tabla ~ 130mb –

0

Ir a xampp/php/php.ini

Encuentre esta línea:

max_execution_time=30 

y cambiar su valor a cualquier número que desee . Reinicie Apache.

1

'ZERO' por tiempo ilimitado.

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

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

También puede importar el archivo grande derecha desde MySQL como consulta o una consulta en PHP.

500,000 filas solo me tomaron 18 segundos para importar en el servidor local, usando este método.

(crear la tabla en primer lugar) - a continuación:

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

Bueno para Wamp usuario,

Ir a: wamp\apps\phpmyadmin3.3.9\libraries

Bajo la línea 536, locate $cfg['ExecTimeLimit'] = 0;

y cambie el valor de 0 a 6000. eg

$cfg['ExecTimeLimit'] = 0; 

Para

$cfg['ExecTimeLimit'] = 6000; 

servidor WAMP Reiniciar y uf.

¡Funciona como magia!

+0

Esto es realmente incorrecto, debe ser al revés '0 'significa que no hay límite de tiempo de ejecución – user919426

2

En php.ini debe marcar también mysql.connect_timeout. Es responsable de cerrar el socket y devolver el Fatal. Así, por ejemplo, cambiarlo a:

mysql.connect_timeout = 3600 

Ese tiempo será siempre contó en cuestión de segundos, por lo que en mi ejemplo tiene 1 hora.

+0

Gracias, esto hizo la magia. –

+0

Muchas gracias. tu solución resolvió mi problema – JavaFan

Cuestiones relacionadas