1. 程式人生 > >Postgresql - dump - 不生成檔案的傳輸表資料

Postgresql - dump - 不生成檔案的傳輸表資料

在兩個資料庫中,建立好相同的表,

執行命令匯入:

psql -U postgres -h test01 -d test -c "COPY test01 to STDOUT" | psql -U postgres -h test02 -d test -c "COPY test02 from STDIN;"

 

[[email protected] ~]# ps -ef | grep psql

root 26745 25899 17 23:32 pts/0 00:00:08 psql -U postgres -h  -d test01 -c COPY test02 to STDOUT

root 26746 25899 20 23:32 pts/0 00:00:10 psql -U postgres -h test02 -d test -c COPY test02 from STDIN;

 

datid | datname | pid | usesysid | usename | application_name | client_addr | clien

t_hostname | client_port | backend_start | xact_start

| query_start | state_change | wait_event_type | wait_

event | state | backend_xid | backend_xmin | query | backend_type

-------+---------+-------+----------+----------+------------------+--------------+---------

---------------+-------------+-------------------------------+-----------------------------

--+-------------------------------+-------------------------------+-----------------+------

------+--------+-------------+--------------+-------------------------+----------------

16602 | test | 20455 | 10 | postgres | psql | 192.168.4.13 | test01

| 39188 | 2018-10-19 11:41:07.714961+08 | 2018-10-19 11:41:07.723336+0

8 | 2018-10-19 11:41:07.723336+08 | 2018-10-19 11:41:07.72334+08 | |

| active | 725 | 725 | COPY test02 from STDIN; | client backend

 

匯入的過程中,並不會生成檔案。匯出的同時,就會相應的匯入到目標端。由於是一個事務,所以匯入時候並不會查到表內資料。但是可以看到表的大小一致在漲。