본문 바로가기
프로그래밍/Database

PostgreSQL 외부 데이터베이스 테이블을 참조하기 위한 fdw 설정

by freeelifee 2021. 12. 22.
728x90

1. fdw를 테스트하기 위해 데이터베이스 2개(test, test1)를 생성함

test 데이터베이스에서 test1 데이터베이스의 테이블을 참조하기 위해 아래와 같이 실행함.

 

1. fdw 생성

CREATE EXTENSION postgres_fdw;

 

2. 외부 서버 생성
CREATE SERVER test1_svr FOREIGN DATA WRAPPER postgres_fdw  -- 1번에서 생성한 postgres_fdw

OPTIONS (  -- test1 데이터베이스 정보
host 'localhost',
port '5432',
dbname 'test1'
);

 

3. 사용자 매핑 생성

test 접속 사용자와 test1 접속 사용자를 매핑해줌

CREATE USER MAPPING
FOR postgres  -- test 접속 사용자
SERVER test1_svr  -- 2번에서 생성한 test1_svr
OPTIONS (
USER 'postgres',  -- test1 접속 사용자
PASSWORD 'admin'
);

 

4. 외부 서버의 테이블 생성

-- 특정 테이블만 생성. test1_tb1, test1_tb2, test1_tb3 이렇게 콤마로 구분하여 사용 가능)

IMPORT FOREIGN SCHEMA public LIMIT TO (test1_tb1) 

FROM SERVER test1_svr INTO PUBLIC
;

 

5. 테이블 삭제

DROP FOREIGN TABLE public.test1_tb1;

728x90

'프로그래밍 > Database' 카테고리의 다른 글

[PostgreSQL] 날짜/시간  (0) 2022.04.28
Postgresql procedure  (0) 2022.02.10
PostgreSQL 에러  (0) 2021.12.22
PostgreSQL 쿼리  (0) 2021.12.10
[PostgreSQL] PostgreSQL 설치 및 SQLDeveloper 사용하기  (0) 2021.10.13