51.15. pg_database
目录pg_database
存储有关可用数据库的信息。使用CREATE DATABASE命令创建数据库。有关某些参数含义的详细信息,请咨询Chapter 22。
与大多数系统目录不同,pg_database
在群集的所有数据库之间共享:每个群集只有pg_database
的一个副本,而不是每个数据库一个。
表 51.15. pg_database
列
Name | Type | References | Description |
---|---|---|---|
oid | oid | 行标识符(隐藏属性;必须显式选择) | |
datname | name | Database name | |
datdba | oid | pg_authid.oid | 数据库的所有者,通常是创建数据库的用户 |
encoding | int4 | 此数据库的字符编码(pg_encoding_to_char() 可以将此数字转换为编码名称) | |
datcollate | name | 该数据库的 LC_COLLATE | |
datctype | name | 此数据库的 LC_CTYPE | |
datistemplate | bool | 如果为 true,则任何具有CREATEDB 特权的用户都可以克隆此数据库;如果为 false,则只有超级用户或数据库所有者才能克隆它。 | |
datallowconn | bool | 如果为 false,则没有人可以连接到该数据库。这用于防止template0 数据库被更改。 | |
datconnlimit | int4 | 设置可以与此数据库构建的最大并发连接数。 -1 表示没有限制。 | |
datlastsysoid | oid | 数据库中的最后一个系统 OID;对 pg_dump 特别有用 | |
datfrozenxid | xid | 此数据库之前,所有之前的 TransactionID 已被永久(“冻结”)TransactionID 取代。这用于跟踪是否需要清理数据库以防止事务 ID 环绕或允许pg_xact 收缩。它是每个表pg_class 的最小值。 relfrozenxid 个值。 | |
datminmxid | xid | 此数据库之前的所有多重 ID 已替换为事务 ID。这用于跟踪是否需要清理数据库以防止多重 ID 环绕或使pg_multixact 收缩。它是每个表pg_class 的最小值。 relminmxid 个值。 | |
dattablespace | oid | pg_tablespace.oid | 数据库的默认表空间。在此数据库中,包含pg_class 的所有表。 reltablespace 为零将存储在此表空间中;特别是,所有非共享系统目录都将存在。 |
datacl | aclitem[] | 访问权限;有关详情,请参见GRANT和REVOKE |