DROP DATABASE — 데이터베이스 제거

DROP DATABASE — 데이터베이스 제거

DROP DATABASE 문으로 데이터베이스를 제거합니다. 데이터베이스의 카탈로그 항목을 지우고 데이터를 담은 디렉터리도 삭제해요. 되돌릴 수 없는 명령이므로 주의해서 사용해야 합니다.

출처: PostgreSQL 문서

본문

개요 (Synopsis)

DROP DATABASE [ IF EXISTS ] name [ [ WITH ] ( option [, ...] ) ]

여기서 option은:

FORCE

설명 (Description)

DROP DATABASE는 데이터베이스를 삭제해요. 데이터베이스에 대한 카탈로그 항목을 제거하고 데이터를 담은 디렉터리를 삭제하죠. 데이터베이스 소유자만 실행할 수 있어요. 대상 데이터베이스에 연결된 상태에서는 실행할 수 없습니다. (이 명령을 내리려면 postgres나 다른 데이터베이스에 연결하세요.) 또한 다른 사람이 대상 데이터베이스에 연결되어 있으면, 아래에 설명한 FORCE 옵션을 쓰지 않는 한 이 명령은 실패해요.

DROP DATABASE는 되돌릴 수 없어요. 조심해서 쓰세요!

매개변수 (Parameters)

  • IF EXISTS — 데이터베이스가 없어도 오류를 내지 않아요. 이 경우 알림(notice)이 발행됩니다.
  • name — 제거할 데이터베이스의 이름이에요.
  • FORCE — 대상 데이터베이스에 대한 모든 기존 연결을 종료하려 시도해요. 대상 데이터베이스에 준비된 트랜잭션(prepared transaction), 활성 논리 복제 슬롯, 또는 구독(subscription)이 있으면 종료하지 않습니다.
    • 이것은 백그라운드 워커 연결과, 현재 사용자가 9.28.2절에 설명된 pg_terminate_backend로 종료할 권한이 있는 연결을 종료해요. 연결이 남아 있으면 이 명령은 실패합니다.

참고 사항 (Notes)

DROP DATABASE는 트랜잭션 블록 안에서는 실행할 수 없어요.

이 명령은 대상 데이터베이스에 연결된 상태에서는 실행할 수 없어요. 그러니 이 명령의 래퍼인 dropdb 프로그램을 쓰는 게 더 편리할 수 있습니다.

호환성 (Compatibility)

SQL 표준에는 DROP DATABASE 문이 없어요.

함께 보기 (See Also)

더 알아보기 (Learn more)

  • CREATE DATABASE — 데이터베이스를 만드는 명령이에요.
  • dropdb — DROP DATABASE를 감싸는 클라이언트 프로그램
  • ALTER DATABASE — 데이터베이스 속성 변경