Ho uno script PHP che analizza i file XML e crea un file di grandi dimensioni SQL che sembra qualcosa di simile:Come importare i file SQL di grandi dimensioni in tabella mysql
INSERT IGNORE INTO table(field1,field2,field3...)
VALUES ("value1","value2",int1...),
("value1","value2",int1)...etc
Questo file aggiunge fino a oltre 20 GB (I ho testato su un file da 2,5 GB ma fallisce anche).
Ho provato comandi come: radice
mysql -u -p nome_tabella < /var/www/bigfile.sql
questo funziona su file più piccoli, dico intorno 50MB. ma non funziona con un file più grande.
ho provato:
mysql> source /var/www/bigfile.sql
Ho anche provato mysqlimport, ma che non sarà nemmeno correttamente elaborare il mio file.
Continuo a ricevere un errore che dice
ERROR 2006 (HY000): MySQL server has gone away
Happens circa. 30 secondi dopo l'inizio dell'esecuzione.
Ho impostato allowed_max_packet su 4 GB, ma quando lo si verifica con SHOW VARIABLES mostra solo 1 GB.
C'è un modo per farlo senza sprecare altre 10 ore?
perché non ho pensato che ... – nick
appena importato 2.5 gb in circa 5 minuti. grazie per il suggerimento! – nick
Dai anche un'occhiata all'impostazione 'max_allowed_packet = 16M' in my.cnf - impostandola su qualcosa di molto grande come 16M consentirà i singoli singoli più grandi –