postgresql通過dblink操作遠端資料庫
阿新 • • 發佈:2019-02-04
安裝
找到postgresql安裝目錄,在postgresql-10.3/contrib/dblink下,執行
make && make install
注:可以使用find命令找到dblink資料夾
find .* -name dblink
安裝完畢之後,目錄下多了dblink.so和dblink.o
在資料庫中執行
create extension dblink;
至此,dblink安裝完畢
使用
1、連線遠端資料庫
select dblink_connect('dblinkname','host=host port=port dbname=dbname user=dbuser password=pwd');
其中,dblinkname為別名即此連線的名稱(非必填),host為主機ip,port為埠號,dbname為資料庫名稱,dbuser和password為資料庫的使用者名稱和密碼。
例項:
select dblink_connect('test','host=localhost port=5432 dbname=postgres user=dbuser password=*********');
2、查詢遠端資料庫
select * from dblink('test','select id from tbtest;') as t1(id int);
tbtest為遠端資料庫上的表,test為建立連線時取的名字。需注意要給遠端資料庫上查詢的欄位標註資料型別。
3、將遠端資料庫上的資料插入本地資料庫
insert into test1 select * from dblink('test','select id tbtest;') as t1(id int);
在查詢的基礎上,套上insert語句即可。由此可以達到從遠端資料庫遷移到本地的效果。
4、斷開連線
select dblink_disconnect('test');