如何将ZIpped文件导入Postgres表

时间:2013-07-19 16:08:35

标签: postgresql zip

我想将一个文件重要到我的Postgresql系统(特别是RedShift)。我发现了一个允许导入gzip文件的副本争论。但我试图包含在我的系统中的数据提供程序只生成.zip中的数据。用于打开.zip的任何内置postgres命令?

4 个答案:

答案 0 :(得分:2)

你能做点什么吗

unzip -c myfile.zip | gzip myfile.gz

如果你有足够的文件,很容易自动化。

答案 1 :(得分:1)

这可能仅在从S3加载redshift时有效,但实际上只需在将数据复制到redshift表时包含“gzip”标志,如here所述:

如果我的s3存储桶包含gzip压缩包.cs,这是适合我的格式。

copy <table> from 's3://mybucket/<foldername> '<aws-auth-args>' delimiter ',' gzip;

答案 2 :(得分:0)

  

unzip -c /path/to/.zip | psql -U user

&#39;用户&#39;必须有超级用户权利否则你会得到一个

ERROR:  must be superuser to COPY to or from a file

要了解有关此内容的更多信息,请参阅

https://www.postgresql.org/docs/8.0/static/backup.html

这个命令基本上用于处理大型数据库

答案 3 :(得分:0)

从Postgres内部:

jq --slurpfile repl repl.json '.manipulate |= 
  map(if .type=="replace" then $repl[0] else . end)' config.json

来自COPY table_name FROM PROGRAM 'unzip -p input.csv.zip' DELIMITER ','; 的手册页:

unzip -p