PostgreSQL和导入巨大的CSV文件

zqdjd7g9  于 2023-04-09  发布在  PostgreSQL
关注(0)|答案(2)|浏览(180)

我试图导入几个.csv文件(8GB,56GB和11GB),所有这些文件都失败了,出现未知错误。

CREATE TABLE name(
    COMMIT_ID int,
    PARENT_ID int
);

COPY  FROM 'C:/Users/Public/name.csv' DELIMITER ',' NULL AS '\N' ESCAPE AS '\' CSV;

我试过pgAdmin4和cmd。
我使用Windows 10和PostgreSQL 12
所有其他文件都来自同一个数据库,它们都〈1GB。这些文件我可以导入,没有任何问题

1sbrub3j

1sbrub3j1#

这可能不能直接回答这个问题,但我所做的是降级我的postgresql。
我现在使用的是9.6.18,并且使用的是普通命令

COPY  FROM 'C:/Users/Public/name.csv' DELIMITER ',' NULL AS '\N' ESCAPE AS '\' CSV;

我知道这不是一个完美的解决方案,只是看起来这是一个来自PostgreSQL的问题,而不是一个用户的问题

0pizxfdo

0pizxfdo2#

我也遇到过类似的问题。

  • PostgreSQL 9.4.24(Greenplum Database 6.8.1
  • psql(PostgreSQL)9.4.24

我只是把csv文件分割得更小,以避免这个问题。

## for pg_dump output.sql
cat copy_inline_csv.sql | awk '
 s {x+=1; print; if(x%1000==0)print "\\.\n\n" s} 
 !s && /^COPY / {s=$0; print s;}
 $0=="\\." {s=""}' | psql

//我会尝试另一个版本和反馈。

相关问题