微服务框架,系统之间跨库查询PostgreSql的postgres_fdw

前提:微服务框架,内部系统之间需要跨库查询,数据库PostgreSQL

方式一:分开查询,java拼接,必要时可存入缓存

方式二:PostgreSql的postgres_fdw功能,建立外部表

CREATE EXTENSION postgres_fdw;


--创建 foreign server 外部服务器,外部服务是指连接外部数据源的连接信息
CREATE SERVER foreign_server
FOREIGN DATA WRAPPER postgres_fdw
OPTIONS (host 'www.baidu.com', port '1921', dbname 'student-dev');


--需要给外部服务创建映射用户
CREATE USER MAPPING FOR hello
SERVER foreign_server
OPTIONS (user 'hello', password 'hellopassword');

--建立需要的的外部表,注:需要定义相关字段到本库中
CREATE FOREIGN TABLE hello_student
(student_id int, 
student_name varchar(50), 
class_name varchar(50), 
status int, 
deleted int) 
server foreign_server 
OPTIONS (schema_name 'public', table_name 'hello_student');

创建之后可跟其它普通表一样进行查询、联查。


版权声明:本文为IBMAM_Zoey原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。