| PostgreSQL 7.4 文檔 | ||||
|---|---|---|---|---|
| Prev | Fast Backward | Chapter 1. 從頭開始 | Fast Forward | Next |
看看你能否訪問數據庫服務器的第一個例子就是試著創建一個數據庫。 一台運行著的 PostgreSQL 服務器可以管理許多數據庫。 通常我們會為每個項目和每個用戶單獨使用一個數據庫。
你的節點管理員可能已經為你創建了可以使用的數據庫。 他應該已經告訴你這個數據庫的名字。如果這樣你就可以省略這一步, 並且跳到下一節。
要創建一個新的數據庫,在我們這個例子裡叫 mydb,你可以使用下面的命令:
$ createdb mydb
它應該生成下面這樣的響應:
CREATE DATABASE
如果這樣,那麼這一步就成功了,你就可以忽略本節餘下的部分了。
如果你看到類似下面這樣的信息
createdb: command not found
那麼就是PostgreSQL沒有安裝好。要麼是就根本沒裝上, 要麼是你的搜索路徑沒有設置正確。嘗試用絕對路徑調用該命令試試:
$ /usr/local/pgsql/bin/createdb mydb
在你的節點上這個路徑可能不一樣。和你的管理員聯系或者看看安裝指導獲取正確的位置。
另外一種響應可能是這樣:
createdb: could not connect to database template1: could not connect to server:
No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?這意味著該服務器沒有啟動,或者沒有在 createdb 預期的地方啟動。同樣, 你也要檢查安裝指導或者找管理員。
如果你沒有創建數據庫所需要的權限,那麼你會看到下面的東西:
ERROR: CREATE DATABASE: permission denied createdb: database creation failed
並非所有用戶都經過了創建新數據庫的授權。 如果 PostgreSQL 拒絕為你創建數據庫, 那麼你需要讓節點管理員賦予你創建數據庫的權限。出現這種情況時請咨詢你的節點管理員。 如果你自己安裝了 PostgreSQL, 那麼你應該以你啟動數據庫服務器的用戶身份登陸然後參考手冊完成權限的賦予工作。 [1]
你還可以用其它名字創建數據庫。 PostgreSQL 允許你在一個節點上創建任意數量的數據庫。 數據庫名必須是以字母開頭並且小于 63 個字符長。 一個方便的做法是創建和你當前用戶名同名的數據庫。 許多工具假設該數據庫名為缺省數據庫名,所以這樣可以節省你的敲鍵。 要創建這樣的數據庫,只需要鍵入
$ createdb
如果你再也不想使用你的數據庫了,那麼你可以刪除它。 比如,如果你是數據庫 mydb 的所有人(創建人), 那麼你就可以用下面的命令刪除它:
$ dropdb mydb
(對于這條命令而言,數據庫名不是缺省的用戶名。這樣你就必須聲明它。) 這個動作物理上將所有與該數據庫相關的文件都刪除並且不可取消, 因此做這件事之前一定要想清楚。
| [1] | 為什麼這麼幹就行了? 解釋:PostgreSQL 用戶名是和操作系統用戶賬號分開的。 如果你與一個數據庫聯接,你可以選擇以何種 PostgreSQL 用戶名進行聯接; 如果你不選擇,那麼缺省就是你的當前操作系統賬號。 如果這樣,那麼總有一個與操作系統用戶同名的 PostgreSQL 用戶賬號用于啟動服務器, 並且通常這個用戶都有創建數據庫的權限。如果你不想以該用戶身份登陸, 那麼你也可以在任何提防聲明一個 -U 選項以選擇一個聯接的 PostgreSQL 用戶名。 |