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

52.15. pg_database #

目錄 pg_database 儲存有關可用資料庫的資訊。資料庫使用 CREATE DATABASE 命令建立。有關某些引數含義的詳細資訊,請參閱 第 22 章

與大多數系統目錄不同,pg_database 在叢集的所有資料庫之間共享:每個叢集只有一個 pg_database 副本,而不是每個資料庫一個。

表 52.15. pg_database

列 型別

描述

oid oid

行識別符號

datname name

資料庫名稱

datdba oid (引用 pg_authid.oid)

資料庫所有者,通常是建立它的使用者

encoding int4

此資料庫的字元編碼(pg_encoding_to_char() 可以將此數字轉換為編碼名稱)

datlocprovider char

此資料庫的區域設定提供程式:b = 內建,c = libc,i = icu

datistemplate bool

如果為 true,則具有 CREATEDB 許可權的任何使用者都可以克隆此資料庫;如果為 false,則只有超級使用者或資料庫所有者可以克隆它。

datallowconn bool

如果為 false,則沒有人可以連線到此資料庫。這用於保護 template0 資料庫免遭修改。

dathasloginevt bool

指示此資料庫已定義登入事件觸發器。此標誌用於避免在每個後端啟動期間在 pg_event_trigger 表上進行額外的查詢。此標誌由 PostgreSQL 內部使用,不應手動更改或用於監控目的。

datconnlimit int4

設定可同時連線到此資料庫的最大連線數。-1 表示無限制,-2 表示資料庫無效。

datfrozenxid xid

在此資料庫中,早於此 ID 的所有事務 ID 都已被替換為永久(凍結)事務 ID。這用於跟蹤是否需要對資料庫進行 vacuum 操作以防止事務 ID 環繞或允許收縮 pg_xact。它是每張表 pg_class.relfrozenxid 值的最小值。

datminmxid xid

在此資料庫中,早於此 ID 的所有多事務 ID 都已被替換為事務 ID。這用於跟蹤是否需要對資料庫進行 vacuum 操作以防止多事務 ID 環繞或允許收縮 pg_multixact。它是每張表 pg_class.relminmxid 值的最小值。

dattablespace oid (引用 pg_tablespace.oid)

資料庫的預設表空間。在此資料庫中,所有 pg_class.reltablespace 為零的表將儲存在此表空間中;特別是,所有非共享的系統目錄都將在此處。

datcollate text

此資料庫的 LC_COLLATE

datctype text

此資料庫的 LC_CTYPE

datlocale text

此資料庫的排序提供程式區域設定名稱。如果提供程式是 libc,則 datlocaleNULL;而是使用 datcollatedatctype

daticurules text

此資料庫的 ICU 排序規則

datcollversion text

排序規則的提供程式特定版本。在建立資料庫時記錄此資訊,然後在資料庫使用時進行檢查,以檢測可能導致資料損壞的排序規則定義更改。

datacl aclitem[]

訪問許可權;有關詳細資訊,請參閱 第 5.8 節


提交更正

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