\dt 명령어로 테이블을 조회했을 때 스키마가 보이지 않을

2025. 5. 29. 15:36DB/Postgres

반응형

psql에서 \dt 명령은 기본적으로 현재 search_path에 있는 스키마 또는 명시된 스키마의 테이블만 보여준다.

즉, \dt만 입력하면 PostgreSQL은 기본적으로 public과 search_path에 지정된 스키마만 확인한다.

 

\dt log.*

 

log 스키마에 있는 모든 테이블을 명시적으로 보여준다. 아무 것도 안 나오면 진짜 테이블이 없는 것이다.

 

 

search_path 설정에 log 스키마가 빠져있을 수 있음

현재 접속된 세션에서 log 스키마가 검색 경로(search_path)에 없으면 \dt로는 기본 출력되지 않다.

 

 


SHOW search_path;

 search_path 
--------------
 "$user", public, config
SET search_path TO log, config, public;

 

 

 

권한 문제 (접근 권한 없음)

현재 접속한 사용자가 log 스키마의 테이블에 대한 USAGE, SELECT 권한이 없을 수도 있다.

 

\dn+

 

각 스키마의 owner 및 권한을 보여준다. log 스키마가 있고, 권한이 없다면 접근이 제한된다.

반응형

'DBMS > Postgres' 카테고리의 다른 글

PostgreSQL의 shared_buffers  (0) 2025.06.01
Postmaster , Backend , Background 프로세스  (0) 2025.06.01
권한 부여  (0) 2025.05.01
VirtualBox Ubuntu VM postgres 설  (0) 2025.04.21
PostgreSQL을 WSL2 + Ubuntu 환경 구성  (0) 2025.04.21