Foros del Web » Programando para Internet » PHP »

Insertar registros masivos en base mysql

Estas en el tema de Insertar registros masivos en base mysql en el foro de PHP en Foros del Web. Hola necesito insertar unos 32.000 registros en una tabla mysql desde PHP. Lo intenté haciendo un for y colocando la sentencia SQL INSERT dentro del ...
  #1 (permalink)  
Antiguo 24/09/2016, 10:16
 
Fecha de Ingreso: mayo-2003
Mensajes: 523
Antigüedad: 21 años, 6 meses
Puntos: 6
Insertar registros masivos en base mysql

Hola necesito insertar unos 32.000 registros en una tabla mysql desde PHP.
Lo intenté haciendo un for y colocando la sentencia SQL INSERT dentro del ciclo.
Pero recibo el error Maximum execution time cuando apenas lleva cargados unos 1.500.
De qué otra forma podría realizar este proceso? En principio supongamos que no puedo modificar el tiempo máximo de ejecución ya que cuando esto esté colgado en la Web dudo que pueda modificar ese parámetro del Hosting.

Desde ya muchas gracias.
  #2 (permalink)  
Antiguo 24/09/2016, 11:07
 
Fecha de Ingreso: enero-2015
Mensajes: 205
Antigüedad: 9 años, 9 meses
Puntos: 18
Respuesta: Insertar registros masivos en base mysql

Has probado a hacer 1 insert con los 32.000 datos, en vez de 32.000 inserts ¿?

Quizá tampoco valga, pero de esta manera solo tienes que ejecutar una sentencia sql
  #3 (permalink)  
Antiguo 24/09/2016, 11:08
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 7 meses
Puntos: 326
Respuesta: Insertar registros masivos en base mysql

Cita:
Iniciado por Integer78 Ver Mensaje
Hola necesito insertar unos 32.000 registros en una tabla mysql desde PHP.
Lo intenté haciendo un for y colocando la sentencia SQL INSERT dentro del ciclo.
Pero recibo el error Maximum execution time cuando apenas lleva cargados unos 1.500.
De qué otra forma podría realizar este proceso? En principio supongamos que no puedo modificar el tiempo máximo de ejecución ya que cuando esto esté colgado en la Web dudo que pueda modificar ese parámetro del Hosting.

Desde ya muchas gracias.
Por cli (command line) creo que no tenia "limite"...

http://php.net/manual/es/features.co...troduction.php

Sino, hay funciones de mysql para el volcado de archivos ;) ( http://dev.mysql.com/doc/refman/5.7/en/mysqlimport.html )
__________________
>> Eleazan's Source
>> @Eleazan
  #4 (permalink)  
Antiguo 24/09/2016, 21:35
 
Fecha de Ingreso: agosto-2012
Ubicación: M.
Mensajes: 2.031
Antigüedad: 12 años, 3 meses
Puntos: 52
Respuesta: Insertar registros masivos en base mysql

No especificas mucho pero yo suelo usar mucho esto.
insert into tabla1(campo1,campo2,campo3) select campo1,campo2,campo3 from tabla2 where..
__________________
a veces creemos que es algo básico pero al profundizar nos damos cuenta que estábamos tocando solo la cola de la culebra

Etiquetas: masivos, mysql, registro, registros, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:47.