pg_stat_progress_copy

一个提供有关COPY执行进度的进度报告视图

pg_stat_progress_copy 是一个进度报告视图,提供有关COPY命令执行的进度信息。

pg_stat_progress_copy 添加于PostgreSQL 14

按PostgreSQL版本定义

pg_stat_progress_copy (PostgreSQL 18)

           View "pg_catalog.pg_stat_progress_copy"
      Column      |  Type   | Collation | Nullable | Default 
------------------+---------+-----------+----------+---------
 pid              | integer |           |          | 
 datid            | oid     |           |          | 
 datname          | name    |           |          | 
 relid            | oid     |           |          | 
 command          | text    |           |          | 
 type             | text    |           |          | 
 bytes_processed  | bigint  |           |          | 
 bytes_total      | bigint  |           |          | 
 tuples_processed | bigint  |           |          | 
 tuples_excluded  | bigint  |           |          | 
 tuples_skipped   | bigint  |           |          |
    

文档: pg_stat_progress_copy

pg_stat_progress_copy (PostgreSQL 17)

           View "pg_catalog.pg_stat_progress_copy"
      Column      |  Type   | Collation | Nullable | Default 
------------------+---------+-----------+----------+---------
 pid              | integer |           |          | 
 datid            | oid     |           |          | 
 datname          | name    |           |          | 
 relid            | oid     |           |          | 
 command          | text    |           |          | 
 type             | text    |           |          | 
 bytes_processed  | bigint  |           |          | 
 bytes_total      | bigint  |           |          | 
 tuples_processed | bigint  |           |          | 
 tuples_excluded  | bigint  |           |          | 
 tuples_skipped   | bigint  |           |          |
    

文档: pg_stat_progress_copy

pg_stat_progress_copy (PostgreSQL 16)

           View "pg_catalog.pg_stat_progress_copy"
      Column      |  Type   | Collation | Nullable | Default 
------------------+---------+-----------+----------+---------
 pid              | integer |           |          | 
 datid            | oid     |           |          | 
 datname          | name    |           |          | 
 relid            | oid     |           |          | 
 command          | text    |           |          | 
 type             | text    |           |          | 
 bytes_processed  | bigint  |           |          | 
 bytes_total      | bigint  |           |          | 
 tuples_processed | bigint  |           |          | 
 tuples_excluded  | bigint  |           |          |
    

文档: pg_stat_progress_copy

pg_stat_progress_copy (PostgreSQL 15)

           View "pg_catalog.pg_stat_progress_copy"
      Column      |  Type   | Collation | Nullable | Default 
------------------+---------+-----------+----------+---------
 pid              | integer |           |          | 
 datid            | oid     |           |          | 
 datname          | name    |           |          | 
 relid            | oid     |           |          | 
 command          | text    |           |          | 
 type             | text    |           |          | 
 bytes_processed  | bigint  |           |          | 
 bytes_total      | bigint  |           |          | 
 tuples_processed | bigint  |           |          | 
 tuples_excluded  | bigint  |           |          |
    

文档: pg_stat_progress_copy

pg_stat_progress_copy (PostgreSQL 14)

           View "pg_catalog.pg_stat_progress_copy"
      Column      |  Type   | Collation | Nullable | Default 
------------------+---------+-----------+----------+---------
 pid              | integer |           |          | 
 datid            | oid     |           |          | 
 datname          | name    |           |          | 
 relid            | oid     |           |          | 
 command          | text    |           |          | 
 type             | text    |           |          | 
 bytes_processed  | bigint  |           |          | 
 bytes_total      | bigint  |           |          | 
 tuples_processed | bigint  |           |          | 
 tuples_excluded  | bigint  |           |          |
    

文档: pg_stat_progress_copy

更改历史

示例

COPY FROM操作期间的示例输出

postgres=# SELECT * FROM pg_stat_progress_copy\gx
-[ RECORD 1 ]----+----------
pid              | 1708412
datid            | 13968
datname          | postgres
relid            | 16473
command          | COPY FROM
type             | PIPE
bytes_processed  | 496156582
bytes_total      | 0
tuples_processed | 522864
tuples_excluded  | 0

请注意,pg_stat_progress_copy仅包含当前正在运行的COPY操作的进度统计信息,否则为空。

为了演示其操作,请创建并填充一个(大型)表,如下所示

postgres=# CREATE TABLE foo (id int, val text);
CREATE TABLE

postgres=# INSERT INTO foo VALUES (generate_series(1,100000000), clock_timestamp());
INSERT 0 100000000

在一个会话中,执行例如

postgres=# COPY foo TO '/tmp/foo_copy.dat';

在该命令运行期间,从另一个会话中执行例如

postgres=# SELECT relid::regclass AS table,
                  command,type,
                  bytes_processed, bytes_total,
                  tuples_processed, tuples_excluded
             FROM pg_stat_progress_copy;

 table | command | type | bytes_processed | bytes_total | tuples_processed | tuples_excluded 
-------+---------+------+-----------------+-------------+------------------+-----------------
 foo   | COPY TO | FILE |       149623523 |           0 |          3978098 |               0
(1 row)

分类

进度报告视图

另请参阅

COPY

反馈

提交任何关于"pg_stat_progress_copy"的评论、建议或更正 此处