Chapter 7. 管理資料庫

Table of Contents
7.1. 概述
7.2. 建立資料庫
7.3. 模板資料庫
7.4. 資料庫配置
7.5. 變更位置
7.6. 刪除資料庫

每個正在運行的PostgreSQL伺服器案例都管理著一個或多個資料庫。 因此,在組織SQL"資料庫物件")物件的層次中,資料庫位於 最頂層。本章描述資料庫的屬性,以及如何建立,管理,和刪除它們。

7.1. 概述

資料庫是一些SQL物件("資料庫物件")的命名集合﹔ 通常每個資料庫物件(表,函數等等)屬於並且只屬於一個資料庫. (不過有幾個系統表,比如 pg_database,屬於整個安裝 並且可以在安裝之內的每個資料庫裡存取.) 更準確地說,一個資料庫是一個樣式的集合,而樣式包含表,函數等等。 因此完整的層次是這樣的:伺服器,資料庫,樣式,表(或者表以外的其他 什麼東西)。

一個與資料庫伺服器連結的應用應該在它的連結請求裡面帶有它想與之連結 的資料庫名稱.不允許在一次連結裡面對多個資料庫存取.(不過 沒有限制一個應用與同一個或者其他資料庫可以建立的連結數量.) 不過,我們可以從同一個連結中存取多個樣式。樣式只是純邏輯的概念, 誰能存取什麼東西是由權限系統管理的。資料庫是物理上相互隔離的, 對它們的存取控制是在連結層次進行控制的。如果一個PostgreSQL 伺服器案例用於承載那些應該分隔並且相互之間並不知曉的使用者和 項目,那麼我們建議把它們放在不同的資料庫裡。如果項目或者使用者 是相互關聯的,並且可以相互使用對方的資源,那麼應該把它們放 在同一個資料庫裡,並且可能是不同的樣式裡。有關管理樣式的更多 資訊在 PostgreSQL 7.3 使用者手冊 裡。

注意: SQL 把資料庫稱作"目錄",不過這兩個東西實際上 沒有什麼區別.