這是 PostgreSQL 和一般關係資料庫系統中的術語及其含義列表。
原子性 (Atomicity)、一致性 (Consistency)、隔離性 (Isolation) 和 持久性 (Durability)。這組資料庫交易的屬性旨在保證並行操作的有效性,甚至在發生錯誤、電源故障等情況下也能保證有效性。
一種函數 (Function),它組合(聚合)多個輸入值,例如通過計數、求平均值或相加,產生單個輸出值。
有關更多資訊,請參閱第 9.21 節。
另請參閱視窗函數 (常式)。
PostgreSQL 用於存取表格和索引中資料的介面。這種抽象允許添加對新類型資料儲存的支援。
請參閱視窗函數 (常式)。
從表格 (Table)和其他關係 (Relation)中收集資料統計資訊的行為,以幫助查詢規劃器 (Query planner)決定如何執行查詢 (Query)。
(不要將此術語與EXPLAIN命令的ANALYZE
選項混淆。)
有關更多資訊,請參閱ANALYZE。
在參考資料 (Datum)時:指其值無法分解為更小的組件的事實。
交易 (Transaction)的屬性,其所有操作要么作為一個單元完成,要么都不完成。此外,如果在交易執行期間發生系統故障,則在恢復後不會顯示任何部分結果。這是其中之一ACID屬性。
在元組 (Tuple)中找到的具有特定名稱和資料類型的元素。
一組定期執行清理 (Vacuum)和分析 (Analyze) (操作)操作的背景進程。協調工作並始終存在的輔助進程 (Auxiliary process)(除非禁用自動清理)稱為自動清理啟動器 (autovacuum launcher),而執行任務的進程稱為自動清理工作進程 (autovacuum workers)。
有關更多資訊,請參閱第 24.1.6 節。
在執行個體 (instance)中的一個程序,負責該執行個體的一些特定背景任務。輔助程序包含自動清理啟動器 (autovacuum launcher) (但不包含自動清理工作程序),背景寫入程序 (background writer),檢查點程序 (checkpointer),日誌程序 (logger),啟動程序 (startup process),WAL封存程序 (WAL archiver),WAL接收程序 (WAL receiver) (但不包含WAL傳送程序 (WAL sender)),WAL摘要程序 (WAL summarizer),以及WAL寫入程序 (WAL writer)。
一個執行個體 (instance)的程序,代表一個客戶端會期 (client session),並處理其請求。
(不要將此術語與相似的術語背景工作程序 (Background Worker)或背景寫入程序 (Background Writer)混淆)。
一個執行個體 (instance)中的程序,執行系統或使用者提供的程式碼。作為PostgreSQL中多個功能的基礎架構,例如邏輯複寫 (logical replication)和平行查詢 (parallel queries)。此外,擴充套件 (Extensions)可以新增自訂的背景工作程序。
有關更多資訊,請參閱第 46 章。
一種輔助程序 (auxiliary process),將髒的資料頁面 (data pages)從共享記憶體 (shared memory)寫入到檔案系統。它會定期喚醒,但只工作一小段時間,以便將其昂貴的I/O活動分散在一段時間內,以避免產生較大的I/O峰值,這可能會阻止其他程序。
有關更多資訊,請參閱第 19.4.5 節。
所有資料庫叢集 (database cluster)檔案的二進制副本。它由工具pg_basebackup產生。與 WAL 檔案結合使用,它可以用作復原、日誌傳輸或串流複寫的起點。
資料頁面中不包含目前列版本的空間,例如未使用的 (可用) 空間或過時的列版本。
在資料庫叢集 (database cluster)中初始化的第一個使用者 (user)。
此使用者擁有每個資料庫中的所有系統目錄表格。它也是所有授予權限的來源角色。由於這些原因,此角色不能被刪除。
此角色也表現為一個正常的資料庫超級使用者 (database superuser),並且其超級使用者狀態無法移除。
某些操作會存取大量的頁面 (pages)。緩衝區存取策略 (Buffer Access Strategy)有助於防止這些操作從共享緩衝區 (shared buffers)中逐出過多的頁面。
緩衝區存取策略建立對有限數量的共享緩衝區 (shared buffers)的引用,並以循環方式重複使用它們。當操作需要一個新的頁面時,會從策略環中的緩衝區中選擇一個犧牲緩衝區,這可能需要刷新該頁面的髒資料,並且可能還需要將未刷新的WAL刷新到永久儲存體。
緩衝區存取策略用於各種操作,例如大型表格的循序掃描、VACUUM
、COPY
、CREATE TABLE AS SELECT
、ALTER TABLE
、CREATE DATABASE
、CREATE INDEX
和CLUSTER
。
將資料 (datum)從其目前的資料類型轉換為另一種資料類型。
有關更多資訊,請參閱CREATE CAST。
SQL標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。
(不要將此術語與系統目錄 (system catalog)混淆)。
有關更多資訊,請參閱第 22.1 節。
定義在關聯 (relation)上的一種約束 (constraint),它限制一個或多個屬性 (attributes)中允許的值。檢查約束可以引用關聯中同一列的任何屬性,但不能引用同一關聯或其他關聯的其他列。
有關更多資訊,請參閱第 5.5 節。
在WAL序列中的一個點,保證堆積和索引資料檔案已使用在該檢查點之前修改的所有來自共享記憶體 (shared memory)的資訊進行更新;一個檢查點記錄 (checkpoint record)被寫入並刷新到 WAL 以標記該點。
檢查點也是執行達到上述定義的檢查點所需的所有操作的行為。當滿足預定義的條件時,例如經過指定的時間量,或者已寫入一定數量的記錄時,就會啟動此過程;或者使用者可以使用命令CHECKPOINT
呼叫它。
更多資訊請參閱第 28.5 節。
請參閱關聯。
擁有資料目錄的操作系統使用者,並且 postgres
程序在其下執行。建立新的資料庫叢集之前,必須存在此使用者。
在具有 root
使用者的作業系統上,不允許該使用者成為叢集擁有者。
在資料庫中完成交易的行為,使其對其他交易可見並確保其持久性。
更多資訊請參閱COMMIT。
客戶端程序和後端程序之間建立的通訊線路,通常透過網路,支援會話。此術語有時用作會話的同義詞。
更多資訊請參閱第 19.3 節。
資料庫中的資料始終符合完整性約束的屬性。在交易提交之前,可能允許交易暫時違反某些約束,但如果在提交時這些違規行為未解決,則此類交易將自動回滾。這是其中之一ACID屬性。
有關更多資訊,請參閱第 5.5 節。
一個系統,如果啟用的話,會累計關於實例活動的統計資訊。
更多資訊請參閱第 27.2 節。
請參閱資料目錄。
一個命名的本地 SQL 物件集合。
有關更多資訊,請參閱第 22.1 節。
資料庫和全域 SQL 物件的集合,以及它們共同的靜態和動態元資料。 有時稱為叢集。 使用 initdb 程式建立資料庫叢集。
在 PostgreSQL 中,術語叢集有時也用於指代實例。(不要將此術語與 SQL 命令 CLUSTER
混淆。)
請參閱實例。
具有超級使用者狀態的角色(請參閱第 21.2 節)。
通常稱為超級使用者。
伺服器檔案系統上的基底目錄,其中包含與 資料庫叢集關聯的所有資料檔案和子目錄 (除了 表空間,以及可選的 WAL)。 環境變數 PGDATA
通常用於指代資料目錄。
叢集的儲存空間包括資料目錄和任何其他表空間。
更多資訊請參閱第 65.1 節。
用於儲存關聯式資料的基本結構。所有頁面大小相同。資料頁面通常儲存在磁碟上,每個頁面位於一個特定的檔案中,並且可以讀取到共享緩衝區中,在那裡可以修改它們,使其變成髒頁。當寫回磁碟時,它們會變成乾淨頁。新的頁面,最初只存在於記憶體中,在寫入磁碟之前也是髒頁。
一個標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。資料類型的值的內部表示法。
一個標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。命令,用於從給定的資料表或關聯中移除資料列。
更多資訊請參閱DELETE。
一種使用者定義的資料類型,它基於另一種底層資料類型。它的行為與底層類型相同,但可能會限制允許的值的集合。
更多資訊請參閱第 8.18 節。
參見交易ID。
可以安裝在執行個體上的軟體附加套件,以獲得額外功能。
更多資訊請參閱第 36.17 節。
一個物理檔案,用於儲存給定關聯的資料。檔案區段的大小受到配置值的限制(通常為 1 GB),因此如果關聯超過該大小,則會將其拆分為多個區段。
更多資訊請參閱第 65.1 節。
(不要將此術語與類似的術語WAL 區段混淆)。
一種表示不在本地資料庫中包含的資料的方式,使其看起來像在本地資料表中。使用外部資料封裝器,可以定義外部伺服器和外部資料表。
更多資訊請參閱CREATE FOREIGN DATA WRAPPER。
在資料表的一個或多個欄位上定義的約束類型,要求這些欄位中的值識別另一個(或很少情況下,是相同的)資料表中的零或一個資料列。
使用相同外部資料封裝器且具有其他共同配置值的外部資料表的具名集合。
更多資訊請參閱CREATE SERVER。
一個關聯,看起來具有類似於常規資料表的資料列和欄位,但會通過其外部資料封裝器轉發資料請求,該封裝器將返回根據外部資料表的定義結構化的結果集。
更多資訊請參閱CREATE FOREIGN TABLE。
關聯儲存在其中的每個獨立的區段檔案集。主分支是實際資料所在的位置。還存在兩個用於中繼資料的輔助分支:可用空間對應表和可見性對應表。未記錄的關聯也有一個初始分支。
一種儲存結構,用於保存資料表主分支的每個資料頁面中繼資料。每個頁面的可用空間對應表條目儲存可用於未來資料列的可用空間量,並且其結構可以有效地搜尋給定大小的新資料列的可用空間。
更多資訊請參閱第 65.3 節。
一種常式,接收零個或多個引數,傳回零個或多個輸出值,並且限制在一個交易內執行。函式作為查詢的一部分被調用,例如通過SELECT
。某些函式可以傳回集合;這些函式稱為集合傳回函式。
函式也可用於調用觸發器。
更多資訊請參閱CREATE FUNCTION。
一個標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。允許使用者或角色存取資料庫中特定物件的指令。
更多資訊,請參閱 GRANT。
包含從表格或實體化檢視衍生的資料的關聯。 其內部結構支援快速檢索和存取原始資料。
更多資訊,請參閱 CREATE INDEX。
一個特殊的基礎備份,對於某些檔案,它可能僅包含自上次備份以來修改的頁面,而不是每個檔案的完整內容。與基礎備份一樣,它由工具pg_basebackup產生。
要還原增量備份,請使用工具 pg_combinebackup,它將增量備份與基礎備份結合在一起。 之後,恢復可以使用WAL 使資料庫叢集 達到一致的狀態。
更多資訊,請參閱Section 25.3.3。
一個標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。用於將新資料新增到表格中的指令。
更多資訊,請參閱 INSERT。
一組後端和輔助處理序,它們使用共同的共享記憶體區域進行通訊。 一個postmaster 處理序管理該實例; 一個實例管理一個資料庫叢集及其所有資料庫。 只要其TCP埠不衝突,則許多實例可以在同一伺服器上執行。
該實例處理DBMS的所有關鍵功能: 讀取和寫入檔案和共享記憶體,保證ACID屬性、與客戶端處理序的連線、權限驗證、崩潰恢復、複製等。
交易的效果在提交之前對並行交易不可見的屬性。 這是其中之一ACID屬性。
更多資訊,請參閱Section 13.2。
一個操作和標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。查詢中用於組合來自多個關係的資料的關鍵字。
一種允許進程限制或防止同時存取資源的機制。
日誌檔包含關於事件的,人類可讀的文字行。 範例包括登入失敗、長時間運行的查詢等。
更多資訊,請參閱Section 24.3。
如果對表格的變更已傳送到WAL,則該表格被視為已記錄。 預設情況下,所有常規表格都會被記錄。 可以在建立時或透過ALTER TABLE
指令將表格指定為未記錄。
一個輔助處理序,如果啟用了該處理序,則會將有關資料庫事件的資訊寫入到目前的日誌檔中。 當達到某些時間或容量相關的標準時,會建立一個新的日誌檔。 也稱為syslogger。
更多資訊,請參閱Section 19.8。
WAL 記錄的舊稱。
進入WAL的位元組偏移量,隨著每個新的WAL 記錄而單調遞增。
更多資訊,請參閱 pg_lsn
和 Section 28.6。
請參閱日誌序列號碼。
請參閱主要 (伺服器)。
一種特性,表示某些資訊已經被預先計算並儲存以供稍後使用,而不是在需要時才進行計算。
此術語用於 實體化檢視表 (materialized view),表示從檢視表的查詢衍生的資料與該資料的來源分開儲存在磁碟上。
此術語也用於指代某些多步驟查詢,表示執行給定步驟所產生的資料儲存在記憶體中(可能溢出到磁碟),以便另一個步驟可以多次讀取它。
一種 關係 (relation),由 SELECT
陳述式定義(就像 檢視表 (view) 一樣),但以與 資料表 (table) 相同的方式儲存資料。 無法透過 INSERT
、UPDATE
、DELETE
或 MERGE
操作進行修改。
有關更多資訊,請參閱 CREATE MATERIALIZED VIEW。
一個標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。用於有條件地新增、修改或移除給定 資料表 (table) 中的 列 (rows) 的命令,使用來自來源 關係 (relation) 的資料。
有關更多資訊,請參閱 MERGE。
一種機制,旨在允許多個 交易 (transactions) 讀取和寫入相同的列 (rows),而不會讓一個程序導致其他程序停頓。在 PostgreSQL 中,MVCC 的實現方式是建立 元組 (tuples) 的副本(版本 (versions)),因為它們被修改;在可以看到舊版本的交易終止後,需要移除這些舊版本。
一個不存在的概念,是關係資料庫理論的核心原則。它代表缺少明確的值。
處理執行 查詢 (query) 的部分的能力,以利用具有多個的伺服器上的平行程序CPUs.
較大集合的幾個不相交(不重疊)子集之一。
參照 分割區資料表 (partitioned table):每個包含分割區資料表部分資料的資料表之一,據說是 父 (parent) 資料表。 分割區本身是一個資料表,因此也可以直接查詢;同時,分割區有時可以是分割區資料表,允許建立階層。
參照 視窗函式 (window function) 在 查詢 (query) 中,分割區是用戶定義的準則,用於識別 查詢結果集 (query's result set) 的哪些相鄰 列 (rows) 可以被該函式考慮。
一種 關係 (relation),在語意上與 資料表 (table) 相同,但其儲存空間分佈在幾個 分割區 (partitions) 中。
執行個體 (instance) 的第一個程序。它啟動並管理 輔助程序 (auxiliary processes),並根據需要建立 後端程序 (backend processes)。
有關更多資訊,請參閱 第 18.3 節。
在 資料表 (table) 或其他 關係 (relation) 上定義的 唯一性約束 (unique constraint) 的特例,它還保證 主鍵 (primary key) 中的所有 屬性 (attributes) 沒有 空值 (null)。顧名思義,每個資料表只能有一個主鍵,儘管可以有多個沒有空值屬性的唯一性約束。
當兩個或更多 資料庫 (databases) 透過 複製 (replication) 連結時,被認為是資訊的權威來源的 伺服器 (server) 稱為 主要 (primary),也稱為 主 (master)。
一種常式類型。它們的獨特之處在於它們不傳回值,並且允許它們進行交易陳述式,例如 COMMIT
和 ROLLBACK
。它們透過 CALL
命令叫用。
有關更多資訊,請參閱 CREATE PROCEDURE。
用戶端發送到 後端 (backend) 的請求,通常是為了傳回結果或修改資料庫上的資料。
PostgreSQL 中專門用於確定(規劃 (planning))執行 查詢 (queries) 的最有效方式的部分。 也稱為 查詢最佳化器 (query optimizer)、最佳化器 (optimizer) 或簡稱為 規劃器 (planner)。
請參閱 元組 (Tuple)。
請參閱 WAL 檔案。
在資料庫中所有具有名稱和特定順序定義之屬性列表的物件的通用術語。資料表、序列、檢視、外部資料表、實體化檢視、複合類型和索引都是關聯。
更廣義地說,關聯是一組元組;例如,查詢的結果也是一個關聯。
在 PostgreSQL 中,Class 是 relation 的古老同義詞。
一個與主資料庫配對的資料庫,並維護主資料庫部分或全部資料的副本。這樣做的主要原因是可以更好地存取該資料,並在主伺服器不可用時,保持資料的可用性。
將一個伺服器上的資料複製到另一個稱為副本的伺服器上的動作。 這可以採取實體複寫的形式,其中一個伺服器的所有檔案變更都會被逐字複製,或者邏輯複寫的形式,其中使用更高層次的表示形式來傳達已定義的資料變更子集。
更多資訊請參閱第 28.5 節。
完成後,從後端程序傳輸到客戶端的關聯。標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。命令,通常是 SELECT
,但如果指定了 RETURNING
子句,則可以是 INSERT
、UPDATE
、DELETE
或 MERGE
命令。
結果集是關聯的事實意味著查詢可以用於另一個查詢的定義中,成為子查詢。
有關更多資訊,請參閱 REVOKE。
對資料庫執行個體的存取權限的集合。 角色本身是一種權限,可以授予其他角色。 這樣做通常是為了方便或確保多個使用者需要相同的權限時的完整性。
有關更多資訊,請參閱 CREATE ROLE。
一個命令,用於撤銷自交易開始以來執行的所有操作。
有關更多資訊,請參閱 ROLLBACK。
儲存在資料庫系統中的一組已定義的指令,可以被調用以執行。 常式可以用多種程式語言編寫。 常式可以是函數(包括設定傳回函數和觸發器函數)、彙總函數和程序。
許多常式已經在 PostgreSQL 中定義,但也可以新增使用者定義的常式。
請參閱 元組 (Tuple)。
在交易步驟序列中的一個特殊標記。 在此時間點之後的資料修改可以恢復到儲存點的時間。
有關更多資訊,請參閱 SAVEPOINT。
綱要是一個SQL 物件的命名空間,所有 SQL 物件都位於同一個資料庫中。 每個 SQL 物件必須恰好位於一個綱要中。
所有系統定義的 SQL 物件都位於綱要 pg_catalog
中。
更廣義地說,術語 綱要 用於表示給定資料庫或其子集的所有資料描述(資料表定義、約束、註解等)。
有關更多資訊,請參閱 第 5.10 節。
請參閱 檔案區段。
SQL標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。用於從資料庫請求資料的命令。 通常,預期 SELECT
命令不會以任何方式修改資料庫,但是查詢中調用的函數可能會產生修改資料的副作用。
有關更多資訊,請參閱 SELECT。
一種用於產生值的關聯類型。通常,產生的值是依序且不重複的數字。它們通常用於產生代理 主鍵 值。
執行 PostgreSQL 實例 的電腦。術語 伺服器 表示真實的硬體、容器或 虛擬機器。
有時此術語也用於指代實例或主機。
一種允許客戶端和後端互動的狀態,通過 連線 進行通訊。
RAM由 實例 通用的程序所使用。它鏡像 資料庫 檔案的部分內容、為 WAL 紀錄 提供暫時區域,並儲存額外的通用資訊。請注意,共享記憶體屬於完整的實例,而不是單一資料庫。
共享記憶體的最大部分稱為 共享緩衝區,用於鏡像資料檔案的一部分,並組織成頁面。當頁面被修改時,它被稱為髒頁,直到它被寫回檔案系統。
更多資訊,請參閱 第 19.4.1 節。
可以使用 CREATE
命令建立的任何物件。大多數物件都是特定於一個資料庫的,通常稱為 本機物件。
大多數本機物件都位於它們所包含的資料庫中的特定 綱要 中,例如 關聯(所有類型)、常式(所有類型)、資料類型等。在同一綱要中相同類型的物件名稱必須是唯一的。
也存在不位於綱要中的本機物件;一些範例是 擴充套件、資料類型轉換 和 外部資料包裝器。在資料庫中相同類型的物件名稱必須是唯一的。
其他物件類型,例如 角色、表空間、複製來源、邏輯複製的訂閱以及資料庫本身不是本機 SQL 物件,因為它們完全存在於任何特定資料庫之外;它們被稱為 全域物件。此類物件的名稱在整個資料庫叢集中必須是唯一的。
有關更多資訊,請參閱第 22.1 節。
定義標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。語言的一系列文件。
請參閱 複本 (伺服器)。
一個 輔助程序,在崩潰恢復期間以及在 物理複本 中重播 WAL。
(名稱具有歷史意義:啟動程序是在實作複製之前命名的;該名稱指的是其與崩潰後伺服器啟動相關的任務。)
在本文件中,它是 資料庫超級使用者 的同義詞。
描述實例的所有 SQL 物件 結構的一組 表格。系統目錄位於 pg_catalog
綱要中。這些表格包含內部表示形式的資料,通常不認為對使用者檢查有用;許多使用者友好的 檢視表,也位於 pg_catalog
綱要中,提供了對某些資訊更方便的存取,同時 information_schema
綱要中存在額外的表格和檢視表(請參閱 第 35 章),這些表格和檢視表公開了 SQL 標準 授權的一些相同和額外資訊。
有關更多資訊,請參閱 第 5.10 節。
具有共同資料結構的一組 元組(相同數量的 屬性,依相同的順序,每個位置具有相同的名稱和類型)。表格是 PostgreSQL 中最常見的 關聯 形式。
更多資訊,請參閱 CREATE TABLE。
伺服器檔案系統上的一個具名位置。所有需要在 系統目錄 中除了其定義之外還需要儲存空間的 SQL 物件 都必須屬於一個表空間。最初,資料庫叢集包含一個可用作所有 SQL 物件預設值的表空間,稱為 pg_default
。
更多資訊,請參閱 第 22.6 節。
表格 (Tables)的存在時間為連線 (session)的生命週期或是交易 (transaction)的生命週期,如建立時所指定的。其中的資料對其他連線不可見,且不會被記錄 (logged)。臨時表格通常用於儲存多步驟操作的中間資料。
更多資訊,請參閱 CREATE TABLE。
一種機制,用於分割表格列的大型屬性並儲存在輔助表格中,稱為TOAST 表格。每個具有大型屬性的關係都有其自己的 TOAST 表格。
更多資訊,請參閱第 65.2 節。
指令的組合,必須作為單一原子 (atomic)指令運作:它們全部成功或全部失敗,作為一個單元,並且它們的影響在交易完成之前,對其他連線 (sessions)不可見,甚至可能更晚,具體取決於隔離層級。
更多資訊,請參閱Section 13.2。
每個交易首次引起資料庫修改時收到的數值、唯一、依序分配的識別碼。通常縮寫為xid。儲存在磁碟上時,xid 只有 32 位元寬,因此只能產生大約 40 億個寫入交易 ID;為了讓系統運行更長時間,還使用了epochs,也是 32 位元寬。當計數器達到最大 xid 值時,它會從 3
重新開始(該值以下的值是保留的),並且 epoch 值會增加 1。在某些情況下,epoch 和 xid 值被一起視為單一 64 位元值;有關更多詳細資訊,請參閱第 66.1 節。
更多資訊,請參閱第 8.19 節。
在測量運行期間,所有活動連線每秒執行的平均交易數量。這用於衡量實例的效能特性。
一個函式 (function),可以定義為在特定操作(INSERT
、UPDATE
、DELETE
、TRUNCATE
)應用於關係 (relation)時執行。觸發器在調用它的語句所在的同一個交易 (transaction)中執行,如果函式失敗,則調用語句也會失敗。
更多資訊,請參閱CREATE TRIGGER。
以固定順序排列的屬性 (attributes)的集合。該順序可以由表格 (table)(或其他關係 (relation))定義,元組包含在其中,在這種情況下,元組通常稱為列 (row)。它也可以由結果集的結構定義,在這種情況下,它有時稱為記錄 (record)。
在關係 (relation)上定義的一種約束 (constraint)類型,它限制了一個或多個欄位中允許的值,因此每個值或值的組合只能在關係中出現一次 — 也就是說,關係中沒有其他列包含與這些值相等的值。
因為空值 (null values)不被認為彼此相等,所以允許多個具有空值的列存在而不違反唯一約束。
某些關係 (relations)的屬性,它們的變更不會反映在WAL中。這會禁用這些關係的複製和崩潰恢復。
未記錄表格的主要用途是儲存必須在進程之間共享的暫時工作資料。
臨時表格 (Temporary tables)始終未記錄。
一個標準使用此術語來指示在PostgreSQL的術語中稱為資料庫 (database)的內容。用於修改可能已存在於指定表格 (table)中的列 (rows)的指令。它無法建立或移除列。
更多資訊,請參閱UPDATE。
本地資料庫 (database)中的登入憑證轉換為外部資料包裝器 (foreign data wrapper)定義的遠端資料系統中的憑證。
更多資訊,請參閱CREATE USER MAPPING。
從表格或實體化視窗移除過期的元組版本 (tuple versions)的過程,以及 PostgreSQL 實作MVCC 所需的其他密切相關的處理。這可以透過使用 VACUUM
指令啟動,也可以透過自動清理 (autovacuum)進程自動處理。
更多資訊請參閱第 24.1 節。
一種關係,由 SELECT
語句定義,但沒有自己的儲存空間。任何時候查詢引用一個檢視表,檢視表的定義都會被替換到查詢中,就像使用者輸入的是子查詢而不是檢視表的名字一樣。
更多資訊請參閱CREATE VIEW。
一種儲存結構,用於保存表中主要分支的每個資料頁面的元資料。每個頁面的可見性地圖條目儲存兩個位元:第一個位元(all-visible
)表示頁面中的所有元組對於所有事務都是可見的。第二個位元(all-frozen
)表示頁面中的所有元組都被標記為凍結。
參閱預寫式日誌。
一個輔助程序,如果啟用,它會保存WAL檔案的副本,以便建立備份或保持副本的最新狀態。
更多資訊請參閱第 25.3 節。
也稱為WAL 片段或WAL 片段檔案。它是按順序編號的一系列檔案,為WAL提供儲存空間。這些檔案的大小都相同,並按順序寫入,將變更分散在多個同時進行的會話中。如果系統崩潰,則按順序讀取這些檔案,並重新執行每個變更以將系統恢復到崩潰前的狀態。
在檢查點將所有變更寫入相應的資料檔案後,可以釋放每個 WAL 檔案。釋放檔案可以通過刪除它或更改其名稱以使其在將來使用,這稱為回收。
更多資訊請參閱第 28.6 節。
對個別資料變更的低階描述。它包含足夠的資訊,以便在系統故障導致變更遺失的情況下,重新執行(重播)資料變更。WAL 紀錄使用不可列印的二進位格式。
更多資訊請參閱第 28.6 節。
一個輔助程序,在副本上運行,從主伺服器接收 WAL,以便由啟動程序進行重播。
更多資訊請參閱第 26.2 節。
請參閱 WAL 檔案。
一個特殊的後端程序,通過網路串流 WAL。接收端可以是WAL 接收器(位於副本中)、pg_receivewal,或任何其他使用複製協定的客戶端程式。
更多資訊請參閱第 19.5.7 節。
一個輔助程序,將WAL 紀錄從共享記憶體寫入到WAL 檔案。
更多資訊請參閱第 19.5 節。
一種函數,用於查詢中,應用於查詢的分割區的結果集;函數的結果基於同一分割區或框架中的列中的值。
所有彙總函數都可以用作視窗函數,但視窗函數也可以用於(例如)為分割區中的每一列賦予排名。也稱為分析函數。
更多資訊請參閱第 3.5 節。
如果您在文件中發現任何不正確、與您的特定功能使用經驗不符,或需要進一步澄清之處,請使用此表單回報文件問題。