我想了解将csv文件复制到postgresql表中需要多长时间。是否有一种合理的方式来打印已复制的行,或者有另一种方法来显示复制进度?
也许有详细设置或者我应该使用--echo或-qecho。
我正在使用:
psql -U postgres -d nyc_data -h localhost -c "\COPY rides FROM nyc_data_rides.csv CSV"
我想了解将csv文件复制到postgresql表中需要多长时间。是否有一种合理的方式来打印已复制的行,或者有另一种方法来显示复制进度?
也许有详细设置或者我应该使用--echo或-qecho。
我正在使用:
psql -U postgres -d nyc_data -h localhost -c "\COPY rides FROM nyc_data_rides.csv CSV"
pg_stat_progress_copy
视图查询活动COPY
的状态。
例如,可以观察以字节和行为单位处理的进度:select * from pg_stat_progress_copy \watch 1
Refs:
使用 PV 工具
pv /tmp/some_table.csv | sudo -u postgres psql -d some_db -c "copy some_table from stdin delimiter ',' null '';"
结果,它将显示出来。
1.42GiB 0:11:42 [2.06MiB/s] [===================================================================================================================================================================>] 100%
正如Laurenz Albe所说,无法测量剩余多少时间来完成整个过程。但今天我做的一件事情是: