Importación de un csv en mysql a través de la línea de comando

Estoy tratando de importar un archivo .csv muy grande (~ 4 gb) en mysql. Estaba considerando usar phpmyadmin, pero luego tienes un tamaño máximo de carga de 2mb. Alguien me dijo que tengo que usar la línea de comando.

Iba a usar estas instrucciones para importarlo: http://dev.mysql.com/doc/refman/5.0/en/mysqlimport.html#c5680

¿Cuál sería el comando para establecer la primera fila en la tabla .csv como los nombres de columna en la tabla mysql? Esta opción está disponible a través de phpmyadmin, por lo que también debe ser una versión de línea de comandos de mysql, ¿verdad ?. Por favor, ayúdame. Gracias.

-Raj

Prueba este comando

load data local infile 'file.csv' into table table fields terminated by ',' enclosed by '"' lines terminated by '\n' (column1, column2, column3,...) 

Los campos aquí son los campos de tabla reales en los que los datos deben sentarse. Los encerrados y las líneas terminadas por son opcionales y pueden ser útiles si tiene columnas entre comillas dobles, como exportaciones de Excel, etc.

Para más detalles, consulte el manual .

Para establecer la primera fila como los nombres de las columnas de la tabla, simplemente ignore la fila que se va a leer y agregue los valores en el comando.

Podrías hacer un

 mysqlimport --columns='head -n 1 $yourfile' --ignore-lines=1 dbname $yourfile` 

Es decir, si su archivo está separado por comas y no está separado por punto y coma. De lo contrario, es posible que también deba atravesarlo.

prueba esto:

 mysql -uusername -ppassword --local-infile scrapping -e "LOAD DATA LOCAL INFILE 'CSVname.csv' INTO TABLE table_name FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'" 

Para importar csv con una fila de encabezado usando mysqlimport, simplemente agregue

 --ignore-lines=N 

(ignora las primeras N líneas del archivo de datos)

Esta opción se describe en la página que ha vinculado.

Puedes ponerlo de la siguiente manera:

LOAD DATA LOCAL INFILE 'C:/Users/userName/Downloads/tableName.csv' INTO TABLE tableName FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';