dropdb

dropdb —删除 PostgreSQL 数据库

Synopsis

dropdb [ connection-option ...] [ option ...] dbname

Description

dropdb 破坏现有的 PostgreSQL 数据库。执行此命令的用户必须是数据库超级用户或数据库的所有者。

dropdb 是 SQL 命令DROP DATABASE的包装。通过此 Util 和通过其他访问服务器的方法删除数据库之间没有有效的区别。

Options

dropdb 接受以下命令行参数:

  • dbname

    • 指定要删除的数据库的名称。
  • -e
    --echo

    • 回显 dropdb 生成并发送到服务器的命令。
  • -i
    --interactive

    • 在执行破坏性操作之前发出验证提示。
  • -V
    --version

    • 打印 dropdb 版本并退出。
  • --if-exists

    • 如果数据库不存在,请不要引发错误。在这种情况下发出通知。
  • -?
    --help

    • 显示有关 dropdb 命令行参数的帮助,然后退出。

dropdb 还接受以下命令行参数作为连接参数:

  • -h host
    --host=host

    • 指定运行服务器的计算机的主机名。如果该值以斜杠开头,则将其用作 Unix 域套接字的目录。
  • -p port
    --port=port

    • 指定服务器正在侦听连接的 TCP 端口或本地 Unix 域套接字文件 extensions。
  • -U username
    --username=username

    • 连接的用户名。
  • -w
    --no-password

    • 切勿发出密码提示。如果服务器要求密码验证,而其他方式(例如.pgpass文件)无法使用密码,则连接尝试将失败。该选项在没有用户 Importing 密码的批处理作业和脚本中很有用。
  • -W
    --password

    • 强制 dropdb 在连接数据库之前提示 Importing 密码。

此选项从不是必需的,因为如果服务器要求密码验证,则 dropdb 会自动提示 Importing 密码。但是,dropdb 会浪费连接尝试,以发现服务器需要密码。在某些情况下,值得 Importing-W以避免额外的连接尝试。

  • --maintenance-db=dbname

    • 指定要删除目标数据库要连接的数据库的名称。如果未指定,将使用postgres数据库。如果不存在(或正在删除数据库),则将使用template1

Environment

  • PGHOST
    PGPORT
    PGUSER

    • 默认连接参数

与大多数其他 PostgreSQLUtil 一样,该 Util 也使用 libpq 支持的环境变量(请参见Section 34.14)。

Diagnostics

万一遇到困难,请参见DROP DATABASEpsql以获取有关潜在问题和错误消息的讨论。数据库服务器必须在目标主机上运行。同样,libpq 前端库使用的任何默认连接设置和环境变量都将适用。

Examples

要销毁默认数据库服务器上的数据库demo

$ dropdb demo

要使用主机eden上的服务器(端口 5000)销毁数据库demo,并进行验证并查看基本命令:

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

See Also

createdb, DROP DATABASE