PostgreSQL
Prev |  | Next

# dropdb

## Name

dropdb — Remove an existing Postgres database

    dropdb [ options ] dbname

### Inputs

-h, --host `host`

  Specifies the hostname of the machine on which the postmaster is running.

-p, --port `port`

  Specifies the Internet TCP/IP port or local Unix domain socket file extension on which the postmaster is listening for connections.

-U, --username `username`

  Username to connect as.

-W, --password

  Force password prompt.

-e, --echo

  Echo the queries that dropdb generates and sends to the backend.

-q, --quiet

  Do not display a response.

-i, --interactive

  Issues a verification prompt before doing anything destructive.

`dbname`

  Specifies the name of the database to be removed. The database must be one of the existing Postgres databases in this installation.

The options `-h`, `-p`, `-U`, `-W`, and `-e` are passed on literally to psql.

### Outputs

`DROP DATABASE`

  The database was successfully removed.

`dropdb: Database removal failed.`

  Something didn't work out.

If there is an error condition, the backend error message will be displayed. See DROP DATABASE and psql for possibilities.

## Description

dropdb destroys an existing Postgres database. The user who executes this command must be a database superuser or the owner of the database.

dropdb is a shell script wrapper around the SQL command DROP DATABASE via the Postgres interactive terminal psql. Thus, there is nothing special about dropping databases via this or other methods. This means that the psql must be found by the script and that a database server is running at the targeted host. Also, any default settings and environment variables available to psql and the libpq front-end library do apply.

## Usage

To destroy the database `demo` on the default database server:

    $ dropdb demo
    DROP DATABASE

To destroy the database `demo` using the postmaster on host eden, port 5000, with verification and a peek at the underlying query:

    $ dropdb -p 5000 -h eden -i -e demo
    Database "demo" will be permanently deleted.
    Are you sure? (y/n) y
    DROP DATABASE "demo"
    DROP DATABASE

Prev | Home | Next
createuser | Up | droplang