Saltar al contenido

Exportar la tabla de Postgres remota a un archivo CSV en la máquina local

Solución:

Ambos enfoques ya sugeridos parecen ser innecesariamente complicados.

Solo usa psqlestá incorporado copy comando, que funciona igual que en el lado del servidor COPY pero hace una copia sobre el protocolo de cable al cliente y usa rutas de cliente.

Porque es un psql comando de barra diagonal inversa, omite el punto y coma al final, por ejemplo:

copy products TO '/tmp/products.csv' CSV DELIMITER ','

Ver el copy entrada en el manual para el psql comando y el COPY documentación de comandos para obtener más detalles.

Al igual que COPY puedes usar copy con un (SELECT ...) consulta en lugar de un nombre de tabla al copiar datos (pero no dentro).


Una alternativa generalmente inferior que puede ser útil en algunas situaciones limitadas es usar:

psql -t -P format=unaligned -P fieldsep_zero=on -c 'SELECT * FROM tablename'

y usa el -o bandera o redirección de salida de shell para escribir la salida en un archivo. Casi siempre deberías usar copy con preferencia a esto.

El comando de Linux es:

psql -h 127.0.0.1 -U username -o file.csv -c 'select id, name from clients;'
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *