Today
Total
KoreanEnglishFrenchGermanJapaneseSpanishChinese (Simplified)
관리 메뉴

DB & AWS Knowledge

Foreign Table 본문

PostgreSQL/장애사례

Foreign Table

`O` 2024. 11. 14. 21:38
728x90
반응형
grant usage on FOREIGN DATA WRAPPER postgres_fdw to /* 해당 기능을 사용 할 유저 */;

 

 

    • 그 후, 접속 할 대상의 외부 서버에 대한 정보를 아래와 같이 설정 해 준다.

CREATE SERVER /* 사용할 외부서버에 대한 약식 명칭 */ 2FOREIGN DATA WRAPPER postgres_fdw 3OPTIONS ( /* 예시와 같이 접속할 DB명, IP, 포트를 설정 해 준다 */ );

 

  •  
    • 다음은 외부서버 접근 시, 해당 서버에 로그인 할 DB 계정 및 PW 정보를 입력하여, 해당 서버를 사용 할 계정과 외부서버 로그인 계정간 연결을 Mapping 해 준다.

CREATE USER MAPPING
FOR /* 외부서버를 사용 할 DB 계정 (아래 예시에서는 postgres 로 접속 테스트 예정이기에 기입) */
SERVER /* 위에 설정한 접속 대상 외부서버 */
OPTIONS ( /* 해당 서버에 접속 시, 사용 할 외부 서버 DB 계정 및 PW (해당 계정은 외부서버에 미리 만들어져 있어야 한다.) */ );

 

 

  • 이와 같이 설정이 끝나면 테스트로 테이블을 생성 해본다.

CREATE FOREIGN TABLE /* 생성할 테이블 이름 */
SERVER /* 위에 설정한 접속 대상 외부서버 */
OPTIONS ( /* 생성 시, 외부서버에서 생성 및 조회 될 대상 스키마와 테이블명 지정 */ );

 

 

  • 아래와 같이 외부서버에서 사용될 DB 계정이 위의 테이블이 생성된 DB 나 스키마에 조회 및 기타 권한이 없다면 오류가 발생하므로
    아래 예시와 같이 적절한 권한을 미리 부여 하도록 한다. (PostgreSQL 권한 부여는 장애 및 기타 이상여부와 관련된 사례가 많음으로 주의 하도록 한다.)

 

  • 생성 및 권한부여가 끝났다면, 아래와 같이 조회를 해보면 테이블이 외부서버에 정상적으로 생성 및 조회가 가능함을 확인 할 수 있다

반응형

'PostgreSQL > 장애사례' 카테고리의 다른 글

DB Age Full 로 인한 DB 사용 불가  (0) 2021.04.22
Comments