php - una - Cómo importar archivos LARGE sql en la tabla mysql
mostrar tablas de una base de datos mysql en php (1)
Intente dividir el archivo en múltiples consultas INSERT.
Tengo un script php que analiza archivos XML y crea un gran archivo SQL que se ve así:
INSERT IGNORE INTO table(field1,field2,field3...)
VALUES ("value1","value2",int1...),
("value1","value2",int1)...etc
Este archivo suma más de 20GB (lo he probado en un archivo de 2.5GB pero también falla).
He intentado comandos como:
mysql -u root -p table_name </var/www/bigfile.sql
esto funciona en archivos más pequeños, digamos alrededor de 50MB. pero no funciona con un archivo más grande.
Lo intenté:
mysql> source /var/www/bigfile.sql
También probé mysqlimport pero eso ni siquiera procesará mi archivo correctamente.
Sigo recibiendo un error que dice
ERROR 2006 (HY000): MySQL server has gone away
Ocurre aprox. 30 segundos después de que empiece a ejecutar.
Configuré allowed_max_packet a 4GB pero al verificarlo con SHOW VARIABLES solo muestra 1GB.
¿Hay alguna manera de hacer esto sin perder otras 10 horas?