支援的版本:目前 (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 [connection-option...] [option...] dbname

描述

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
--host=host

指定伺服器正在執行的機器的主機名稱。如果該值以斜線開頭,則將其用作 Unix 網域插槽的目錄。

-p port
--port=port

指定伺服器正在監聽連線的 TCP 埠或本機 Unix 網域插槽檔案副檔名。

-U username
--username=username

要連線的使用者名稱。

-w
--no-password

永遠不要發出密碼提示。如果伺服器需要密碼驗證,並且無法透過其他方式(例如 .pgpass 檔案)取得密碼,則連線嘗試將會失敗。如果沒有使用者在場輸入密碼,此選項在批次作業和腳本中會很有用。

-W
--password

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

這個選項並非總是必要的,因為如果伺服器要求密碼驗證,dropdb 會自動提示輸入密碼。但是,dropdb 會浪費一次連線嘗試來 выяснить 伺服器是否需要密碼。在某些情況下,輸入 -W 以避免額外的連線嘗試是值得的。

--maintenance-db=dbname

指定要連線以刪除目標資料庫的資料庫名稱。如果未指定,將會使用 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

提交更正

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