Guardar una consulta MySql en un fichero .csv



En Mysql todas las consultas que lanzamos tenemos la opción de guardar en disco los resultados de forma muy sencilla

Para ésto utilizaremos el parámetro INTO OUTFILE después de la consulta SQL

Por ejemplo podríamos lanzar la siguiente consulta y guardarla en un fichero .csv

SELECT id, title, text, created, price, enabled FROM `pedidos` Where country = 'ES' Order by id desc 
INTO OUTFILE '/tmp/pedidos.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';


Esta consulta creará un fichero llamado pedidos.csv en el directorio /tmp del servidor donde este instalado el MySql. si ejecutáis la consulta en remoto, el fichero se guarda en el servidor.

Importante, es posible que al intentar grabar en disco os de este error:

ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

Si os pasa esto podéis mirar este articulo que explica como solucionarlo El servidor MySQL está ejecutandose con la opción --secure-file-priv


Y esto es todo amigos, feliz programming
Saludos
Alex.