2025年9月25日: PostgreSQL 18 釋出!
支援的版本: 當前 (18) / 17 / 16 / 15 / 14 / 13
開發版本: devel
不支援的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

dropdb

dropdb — 刪除一個 PostgreSQL 資料庫

概要

dropdb [連線選項...] [選項...] 資料庫名

描述

dropdb 用於銷燬一個現有的 PostgreSQL 資料庫。執行此命令的使用者必須是資料庫超級使用者或資料庫的所有者。

dropdb 是命令的包裝器SQL命令 DROP DATABASE。透過此工具刪除資料庫與透過其他方法訪問伺服器刪除資料庫之間沒有實際區別。

選項

dropdb 接受以下命令列引數

dbname

指定要刪除的資料庫的名稱。

-e
--echo

回顯 dropdb 生成併發送給伺服器的命令。

-f
--force

在刪除目標資料庫之前,嘗試終止與目標資料庫的所有現有連線。有關此選項的更多資訊,請參閱 DROP DATABASE

-i
--interactive

在執行任何破壞性操作之前發出一個確認提示。

-V
--version

列印 dropdb 的版本並退出。

--if-exists

如果資料庫不存在,則不丟擲錯誤。在這種情況下會發出一個通知。

-?
--help

顯示關於 dropdb 命令列引數的幫助,然後退出。

dropdb 還接受以下用於連線引數的命令列引數

-h 主機
--host=主機

指定伺服器執行所在計算機的主機名。如果值以斜槓開頭,則用作 Unix 域套接字目錄。

-p
--port=

指定伺服器正在監聽連線的 TCP 埠或本地 Unix 域套接字副檔名。

-U 使用者名稱
--username=使用者名稱

要連線的使用者。:

-w
--no-password

絕不發出密碼提示。如果伺服器需要密碼身份驗證且密碼不可用(例如透過 .pgpass 檔案),則連線嘗試將失敗。此選項在沒有使用者在場輸入密碼的批處理作業和指令碼中很有用。

-W
--password

強制 dropdb 在連線到資料庫之前提示輸入密碼。

此選項永遠不是必需的,因為如果伺服器要求密碼身份驗證,dropdb 將自動提示輸入密碼。但是,dropdb 將浪費一次連線嘗試來發現伺服器需要密碼。在某些情況下,鍵入 -W 以避免額外的連線嘗試是值得的。

--maintenance-db=資料庫名

指定要連線以刪除目標資料庫的資料庫的名稱。如果未指定,將使用 postgres 資料庫;如果該資料庫不存在(或正在被刪除),則將使用 template1。這可以是一個 連線字串。如果是這樣,連線字串引數將覆蓋任何衝突的命令列選項。

環境變數

PGHOST
PGPORT
PGUSER

預設連線引數

PG_COLOR

指定是否在診斷訊息中使用顏色。可能的值為 alwaysautonever

此實用程式以及大多數其他 PostgreSQL 實用程式也使用 libpq 支援的環境變數(請參閱 第 32.15 節)。

診斷

在遇到困難時,請參閱 DROP DATABASEpsql 以瞭解潛在問題和錯誤訊息的討論。資料庫伺服器必須在目標主機上執行。此外,libpq 前端庫使用的任何預設連線設定和環境變數都將適用。

示例

要銷燬預設資料庫伺服器上的 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;

另請參閱

createdb, DROP DATABASE

提交更正

如果您在文件中發現任何不正確、與您對特定功能的體驗不符或需要進一步說明的內容,請使用 此表格 報告文件問題。