에듀테크 프로젝트 대시보드
psql 사용법
psql 은 공식 대화형 클라이언트입니다. 백슬래시(\)로 시작하는 것은 SQL 이 아니라 psql 자체 명령입니다.
psql "postgresql://school:pw@localhost:5432/school"
psql -h localhost -U school -d school # 나눠 쓰기
sudo -u postgres psql -d school # 로컬 슈퍼유저| 명령 | 내용 |
|---|---|
\l | 데이터베이스 목록 (\l+ 크기 포함) |
\dt / \dt+ | 테이블 목록 / 크기·설명 포함 |
\d 테이블 | 컬럼·인덱스·제약·트리거 |
\di \dv \df \dn | 인덱스 / 뷰 / 함수 / 스키마 |
\du | 역할 목록과 속성 |
\sf 함수명 | 함수 정의 출력 |
\x auto -- 넓은 결과는 세로 표시 (한 줄이 화면보다 길 때)
\timing on -- 매 쿼리 실행시간 표시
\e -- 외부 에디터로 쿼리 편집
\i script.sql -- 파일 실행
\copy (SELECT * FROM t) TO 'out.csv' CSV HEADER -- 클라이언트측 파일로
SELECT now(); \watch 2 -- 2초마다 반복 실행
\pset null '∅'psql -d school -v ON_ERROR_STOP=1 -f migrate.sql # 에러 시 즉시 중단
psql -d school -Atc "SELECT count(*) FROM users" # 값만 출력 (스크립트용)
psql -d school -c "\copy users FROM 'users.csv' CSV HEADER"COPY — 서버가 서버 파일시스템을 읽음 (슈퍼유저/pg_read_server_files 필요)\copy — psql 이 클라이언트에서 읽어 스트리밍 (권한 불필요, 원격에서도 동작)