pg_database
目录pg_database
存储有关可用数据库的信息。数据库通过CREATE DATABASE命令创建。
更多关于其参数的信息请查阅第 22 章。
和大部分系统目录不同,pg_database
是在集簇的所有数据库之间共享的:在一个集簇中只有一份pg_database
拷贝,而不是每个数据库一份。
表 51.15. pg_database
的列
名称 | 类型 | 引用 | 描述 |
---|---|---|---|
oid | oid | 行标识符 | |
datname | name | 数据库名字 | |
datdba | oid |
| 数据库的拥有者,通常是创建它的用户 |
encoding | int4 | 此数据库的字符编码的编号(pg_encoding_to_char() 可将此编号转换成编码的名字) | |
datcollate | name | 此数据库的LC_COLLATE | |
datctype | name | 此数据库的LC_CTYPE | |
datistemplate | bool |
如果为真,则此数据库可被任何具有CREATEDB 特权的用户克隆;如果为假,则只有
超级用户或者该数据库的属主能够克隆它。
| |
datallowconn | bool |
如果为假则没有人能连接到这个数据库。这可以用来保护template0 数据库不被修改。
| |
datconnlimit | int4 | 设置能够连接到这个数据库的最大并发连接数。-1表示没有限制。 | |
datlastsysoid | oid | 数据库中最后一个系统OID,对pg_dump特别有用 | |
datfrozenxid | xid |
在此之前的所有事务ID在数据库中已经被替换为一个永久的(“冻结的”) 事务ID。这用于跟踪数据库是否需要被清理,以便组织事务ID回环或者允许pg_xact 被收缩。它是此数据库中所有表的pg_class .relfrozenxid 值的最小值。
| |
datminmxid | xid |
在此之前的所有多事务ID在数据库中已经被替换为一个事务ID。这用于跟踪数据库是否需要被
清理,以便组织事务ID回环或者允许pg_multixact 被收缩。它是此数据库中
所有表的pg_class .relminmxid 值的最小值。
| |
dattablespace | oid |
|
此数据库的默认表空间。在此数据库中,所有pg_class .reltablespace 为0的表都将被存储在这个表空间中,尤其是非共享系统目录都会在其中。
|
datacl | aclitem[] | 访问权限,更多信息参见第 5.7 节 |