Cómo exportar e importar datos en MySQL con LOAD DATA y OUTFILE
Para mover grandes volúmenes de datos, los formatos delimitados (CSV) con LOAD DATA INFILE son mucho más rápidos que los INSERT uno por uno de un dump. La contraparte para exportar es SELECT ... INTO OUTFILE. Ambos requieren atención a permisos y rutas del servidor.
- 1
Revisa dónde se permite escribir y leer archivos
La variable secure_file_priv restringe la carpeta que OUTFILE e INFILE pueden usar. Si está vacía o NULL, el comportamiento cambia; consúltala primero.
SHOW VARIABLES LIKE 'secure_file_priv'; - 2
Exporta datos a un archivo CSV
El archivo se crea en el servidor, no en tu máquina cliente, y dentro de la carpeta permitida por secure_file_priv.
SELECT * FROM clientes INTO OUTFILE '/var/lib/mysql-files/clientes.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'; - 3
Importa un CSV a una tabla
LOAD DATA INFILE es la vía rápida para cargar millones de filas. La tabla destino debe existir con las columnas compatibles.
LOAD DATA INFILE '/var/lib/mysql-files/clientes.csv' INTO TABLE clientes FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'; - 4
Si el archivo está en tu máquina, usa LOCAL
LOAD DATA LOCAL INFILE lee desde el cliente, no del servidor. Requiere que la opción local_infile esté habilitada en ambos lados.
LOAD DATA LOCAL INFILE 'C:/datos/clientes.csv' INTO TABLE clientes FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';
// el error común
LOAD DATA INFILE por defecto no valida integridad como lo haría tu aplicación: filas mal formadas se cargan con advertencias silenciosas y valores truncados. Revisa siempre SHOW WARNINGS después de la carga y valida el conteo de filas contra el origen.
// cuándo conviene un experto
Migrar datos entre sistemas con codificaciones, tipos y llaves distintas es donde las cargas masivas se complican. En dba.mx planeamos migraciones con validación de datos y rollback, con techo cerrado.
Agenda un Escaneo — desde USD $550Esta guía es orientativa y usa comandos de referencia. En producción, adapta a tu versión y prueba en un ambiente seguro primero.