# 删除数据库

dropdb — 删除 PostgreSQL 数据库

# 概要

删除数据库 [连接选项...][option...] 数据库名称

# 描述

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

dropdb 是 SQL 命令的包装器删除数据库.通过此实用程序删除数据库与通过其他访问服务器的方法删除数据库之间没有有效的区别。

# 选项

dropdb 接受以下命令行参数:

数据库名称

指定要删除的数据库的名称。

-e
- 回声

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

-f
- 力量

在删除目标数据库之前尝试终止与目标数据库的所有现有连接。看删除数据库有关此选项的更多信息。

-一世
- 交互的

在执行任何破坏性操作之前发出验证提示。

-V
- 版本

打印 dropdb 版本并退出。

--如果存在

如果数据库不存在,不要抛出错误。在这种情况下发出通知。

-?
- 帮助

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

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

-h *主持人*
--主机=*主持人*

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

-p *港口*
--端口=*港口*

指定服务器正在侦听连接的 TCP 端口或本地 Unix 域套接字文件扩展名。

-U *用户名*
--用户名=*用户名*

要连接的用户名。

-w
--无密码

永远不要发出密码提示。如果服务器需要密码验证,而密码无法通过其他方式获得,例如.pgpass文件,连接尝试将失败。此选项在没有用户输入密码的批处理作业和脚本中很有用。

-W
- 密码

强制 dropdb 在连接到数据库之前提示输入密码。

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

--维护数据库=*数据库名称*

指定要连接到以删除目标数据库的数据库的名称。如果未指定,则postgres将使用数据库;如果不存在(或正在删除数据库),模板1将会被使用。这可以是一个连接字符串.如果是这样,连接字符串参数将覆盖任何冲突的命令行选项。

# 环境

PGHOST
PGPORT
PG用户

默认连接参数

PG_COLOR

指定是否在诊断消息中使用颜色。可能的值为总是,汽车绝不.

与大多数其他 PostgreSQL 实用程序一样,此实用程序也使用 libpq 支持的环境变量(请参阅第 34.15 节)。

# 诊断

如有困难,请参阅删除数据库psql用于讨论潜在问题和错误消息。数据库服务器必须在目标主机上运行。此外,libpq 前端库使用的任何默认连接设置和环境变量都将适用。

# 例子

销毁数据库演示在默认数据库服务器上:

$ dropdb demo

销毁数据库演示使用主机上的服务器伊甸园,端口 5000,进行验证并查看底层命令:

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

# 也可以看看

创建数据库,删除数据库