首页 > 解决方案 > 在 postgres 中使用 COPY 将表导出到 csv 文件并建议减少 csv 文件大小

问题描述

我正在尝试使用 COPY 命令将 Postgres DB 中的表导出到 csv 文件中,结果 csv 文件大小非常大。

以下是将它们导出到 csv 文件的命令。

实际表大小为:600MB
结果 csv 文件大小:162MB

命令:

\copy cities to '/var/lib/pgsql/cities.csv' DELIMITER ',' CSV HEADER;

有人可以建议如何减小 csv 文件的大小吗?

它是 COPY 命令的默认行为吗?我们可以减小文件的大小吗?

标签: postgresqlcsvpostgresql-copy

解决方案


您可以即时压缩文件:

\copy cities TO PROGRAM 'gzip -9 > /var/lib/pgsql/cities.csv.gz' (DELIMITER ',', FORMAT 'csv', HEADER)

推荐阅读