52.15. pg\_database

|       52.15. `pg_database`       |                   |                           |                  |                                        |
|:--------------------------------:|-------------------|---------------------------|------------------|----------------------------------------|
|[Prev](catalog-pg-conversion.html)|[Up](catalogs.html)|Chapter 52. System Catalogs|[Home](index.html)| [Next](catalog-pg-db-role-setting.html)|

---

## 52.15. `pg_database`

[]()

 The catalog `pg_database` stores information about the available databases. Databases are created with the [`CREATE DATABASE`](sql-createdatabase.html) command. Consult [Chapter 23](managing-databases.html) for details about the meaning of some of the parameters.

 Unlike most system catalogs, `pg_database` is shared across all databases of a cluster: there is only one copy of `pg_database` per cluster, not one per database.

**Table 52.15. `pg_database` Columns**

|                                                                                                                                                                                 Column Type<br/><br/> Description                                                                                                                                                                                |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|                                                                                                                                                                               `oid` `oid`<br/><br/> Row identifier                                                                                                                                                                               |
|                                                                                                                                                                             `datname` `name`<br/><br/> Database name                                                                                                                                                                             |
|                                                                                                                             `datdba` `oid` (references [`pg_authid`](catalog-pg-authid.html).`oid`)<br/><br/> Owner of the database, usually the user who created it                                                                                                                             |
|                                                                                                                            `encoding` `int4`<br/><br/> Character encoding for this database (`pg_encoding_to_char()` can translate this number to the encoding name)                                                                                                                             |
|                                                                                                                                                                   `datcollate` `name`<br/><br/> LC\_COLLATE for this database                                                                                                                                                                    |
|                                                                                                                                                                     `datctype` `name`<br/><br/> LC\_CTYPE for this database                                                                                                                                                                      |
|                                                                                                   `datistemplate` `bool`<br/><br/> If true, then this database can be cloned by any user with `CREATEDB` privileges; if false, then only superusers or the owner of the database can clone it.                                                                                                   |
|                                                                                                                     `datallowconn` `bool`<br/><br/> If false then no one can connect to this database. This is used to protect the `template0` database from being altered.                                                                                                                      |
|                                                                                                                               `datconnlimit` `int4`<br/><br/> Sets maximum number of concurrent connections that can be made to this database. -1 means no limit.                                                                                                                                |
|                                                                                                                                                 `datlastsysoid` `oid`<br/><br/> Last system OID in the database; useful particularly to pg\_dump                                                                                                                                                 |
|`datfrozenxid` `xid`<br/><br/> All transaction IDs before this one have been replaced with a permanent (“frozen”) transaction ID in this database. This is used to track whether the database needs to be vacuumed in order to prevent transaction ID wraparound or to allow `pg_xact` to be shrunk. It is the minimum of the per-table [`pg_class`](catalog-pg-class.html).`relfrozenxid` values.|
|            `datminmxid` `xid`<br/><br/> All multixact IDs before this one have been replaced with a transaction ID in this database. This is used to track whether the database needs to be vacuumed in order to prevent multixact ID wraparound or to allow `pg_multixact` to be shrunk. It is the minimum of the per-table [`pg_class`](catalog-pg-class.html).`relminmxid` values.            |
|                       `dattablespace` `oid` (references [`pg_tablespace`](catalog-pg-tablespace.html).`oid`)<br/><br/> The default tablespace for the database. Within this database, all tables for which [`pg_class`](catalog-pg-class.html).`reltablespace` is zero will be stored in this tablespace; in particular, all the non-shared system catalogs will be there.                       |
|                                                                                                                                                  `datacl` `aclitem[]`<br/><br/> Access privileges; see [Section 5.7](ddl-priv.html) for details                                                                                                                                                  |

---

|[Prev](catalog-pg-conversion.html)|[Up](catalogs.html)| [Next](catalog-pg-db-role-setting.html)|
|:---------------------------------|:-----------------:|---------------------------------------:|
|      52.14. `pg_conversion`      |[Home](index.html) |       52.16. `pg_db_role_setting`      |

 // \<![CDATA[ \<-- For SVG support if ('WebSocket' in window) { (function() { function refreshCSS() { var sheets = [].slice.call(document.getElementsByTagName("link")); var head = document.getElementsByTagName("head")[0]; for (var i = 0; i \< sheets.length; ++i) { var elem = sheets[i]; head.removeChild(elem); var rel = elem.rel; if (elem.href && typeof rel != "string" || rel.length == 0 || rel.toLowerCase() == "stylesheet") { var url = elem.href.replace(/(&|\\?)\_cacheOverride=\\d+/, ''); elem.href = url + (url.indexOf('?') \>= 0 ? '&' : '?') + '\_cacheOverride=' + (new Date().valueOf()); } head.appendChild(elem); } } var protocol = window.location.protocol === 'http:' ? 'ws://' : 'wss://'; var address = protocol + window.location.host + window.location.pathname + '/ws'; var socket = new WebSocket(address); socket.onmessage = function(msg) { if (msg.data == 'reload') window.location.reload(); else if (msg.data == 'refreshcss') refreshCSS(); }; console.log('Live reload enabled.'); })(); } // ]]\>