2012-05-18 12 views
15

Ive ha avuto modo di importare 1go di dati sql, ho sollevato il max_allowed_packet a 1100M per essere sicuro.Importazione di 1GO SQL File => ERRORE 2013 (HY000) alla riga 23: Connessione persa al server MySQL durante la query

Quindi io uso:

La mia domanda

mysql -u root -p -D mainbase < GeoPC_WO.sql 

Ma 1 minuto più tardi si ferma durante il processo e ottengo questo errore:

**ERROR 2013 (HY000) at line 23: Lost connection to MySQL server during query 
**Lost connection to MySQL server during query**** 
+0

Il file sql non contiene errori, è una tabella di geolocalizzazione del database mondiale – Anthony

+0

Sono inseriti? –

+0

Hai provato questo? http://stackoverflow.com/questions/10563619/error-code-2013-lost-connection-to-mysql-server-during-query – Joand

risposta

11

Possibile che avete un po 'di grandi dimensioni inserto affermazioni che sono più grandi della tua dimensione massima. Controlla il tuo file /etc/mysql/my.cnf o dovunque sia. Non riesco a ricordare quale sia l'impostazione predefinita, ma può essere utile impostarla su qualcosa di simile a quanto riportato di seguito.

Questa è un'opzione

[mysqld] 
max_allowed_packet = 16M 

E forse il contrario

[mysqldump] 
max_allowed_packet = 16M 
+0

Ive ha ottenuto ancora lo stesso errore: – Anthony

+0

I sET: [mysqld] max_allowed_packet = 1000M E forse il contrario [ mysqldump] max_allowed_packet = 1000M E preso questo errore eRRORE 2013 (HY000) alla riga 23: connessione persa al server MySQL nel corso di query Ed in crash il server SQL, ive ha ottenuto per riavviarlo. Qualche idea? – Anthony

+0

1Gb per un pacchetto è un po 'estremo :-) ci sono altri motivi per cui la connessione può andare via - es. Timeout –

13

Ho avuto esattamente lo stesso problema. Dopo 1 ora di lottare ho risolto questo impostando

net_write_timeout 

ad un valore più alto (nella mia situazione è)

+1

Questa era l'unica soluzione che funzionava nel mio caso: una pipe come "mysqldump | mysql", il comando "mysql" inviare dati a un altro host ed essere troppo lento, causando un timeout (il dumping diretto su un file ha funzionato correttamente, piping su mysql non riuscito) – golimar

+1

Grazie! Ha funzionato anche per me. –

1

Nel mio caso il problema ("Perdita della connessione a MySQL Server durante query") era in un file di dump corrotto o negli hard disk malfunzionanti:

Innanzitutto, ho eseguito il dump sul server principale e poi ho copiato tale dump sul server di replica. Ma sembra che il server di replica abbia avuto alcuni problemi con i suoi HDD e il dump è stato danneggiato, cioè MD5 del file di dump originale sul server principale era diverso da MD5 della copia di dump sul server di replica.

0

Si può provare con questo:

Primo:

sudo /etc/init.d/mysql stop 

allora si dovrebbe modificare questo file:

sudo vi /etc/mysql/my.cnf 

Aggiungere la seguente riga alla sezione [mysqld]:

innodb_force_recovery = 4 

Infine:

sudo /etc/init.d/mysql start 

(innodb_force_recovery forzare il motore di memorizzazione InnoDB per iniziare. Il valore 4 significa che i tuoi file di dati possono essere corrotti. Per ulteriori informazioni è possibile visitare: http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html)

Saluti.

0

Nel mio caso è stato a causa della mancanza di RAM, ho provato a importare un file sql zippato da 90 MB su un server vps da 1 GB RAM e l'errore 2013 si è verificato fino a quando non ho spento il servizio httpd per rilasciare memoria ed eseguire il comando di importazione di nuovo e ha avuto successo poi.

Problemi correlati