我有兩個Windows機器(PC1 & PC2)與PostgreSQL在兩個。在PC1我有表:結合兩個Postgresql相似的表位於兩臺不同的機器
而在PC2我有以下記錄在同一個表:
我想這兩個表結合起來,把他們在PC1到像(順序並不重要):
怎麼辦是什麼?我正在使用PostgreSQL 9.2 & pgAdminIII。如果可能的話,我更喜歡使用USB棒而不是網絡傳輸數據。
我有兩個Windows機器(PC1 & PC2)與PostgreSQL在兩個。在PC1我有表:結合兩個Postgresql相似的表位於兩臺不同的機器
而在PC2我有以下記錄在同一個表:
我想這兩個表結合起來,把他們在PC1到像(順序並不重要):
怎麼辦是什麼?我正在使用PostgreSQL 9.2 & pgAdminIII。如果可能的話,我更喜歡使用USB棒而不是網絡傳輸數據。
這是我會做:
PC1-> pgadmin-> yourtablename - >右鍵 - >備份
文件選項:格式:平原,編碼:your_ecnoding
轉儲選項#1:只有數據,使用列插入。
這將創建sql查詢。 與yourtablename2取代yourtablename和excecute它PC2
刪除重複記錄,並添加數據:
delete from yourtablename2 where id in (select id from yourtablename)
insert into yourtablename
select * from yourtablename2
drop table yourtablename2
你可以只轉儲數據出來:
pg_dump --data-only dbname > outfile.sql
這會給你的所有數據的文件。如果在將此數據插入另一個節點時需要擔心重複項,這是一個大問題。
這是你將怎樣導入數據:
psql --set ON_ERROR_STOP=on dbname < outfile.sql
爲你另一種解決方法,如果你仍然需要同步這兩個數據庫是用一些PostgreSQL的複製策略。 http://www.postgresql.org/docs/9.2/static/warm-standby.html#STREAMING-REPLICATION