pg_database#
Каталог pg_database хранит информацию о доступных базах данных. Базы данных создаются с помощью команды CREATE DATABASE.
В отличие от большинства системных каталогов, pg_database разделяется между всеми базами данных кластера: на каждый кластер приходится только одна копия pg_database, а не одна на каждую базу данных.
Столбец |
Тип данных |
Описание |
|---|---|---|
oid |
oid |
Идентификатор строки |
datname |
datname |
базы данных |
datdba |
oid (ссылается на pg_authid.oid) |
Владелец базы данных, обычно пользователь, который ее создал |
encoding |
int4 |
Кодировка символов для этой базы данных (pg_encoding_to_char() может перевести это число в имя кодировки) |
datalocprovider |
char |
Locale поставщик для этой базы данных: c = libc, i = icu |
datistemplate |
bool |
Если true, то эту базу данных может клонировать любой пользователь с привилегиями CREATEDB; если false, то ее могут клонировать только суперпользователи или владелец базы данных |
datallowconn |
bool |
Если false, никто не может подключиться к этой базе данных. Это используется для защиты базы данных template0 от изменений |
datconnlimit |
int4 |
Устанавливает максимальное количество одновременных подключений, которые могут быть сделаны к этой базе данных. -1 означает отсутствие лимита, -2 указывает на то, что база данных недействительна |
datfrozenxid |
xid |
Все идентификаторы транзакций до этого были заменены на постоянный («замороженный») идентификатор транзакции в этой базе данных. Это используется для отслеживания того, нужно ли очистить базу данных, чтобы предотвратить зацикливание идентификатора транзакции или позволить сузить pg_xact. Это минимум значений для каждой таблицы pg_class.relfrozenxid |
datminmxid |
xid |
Все идентификаторы мультифакта до этого были заменены идентификатором транзакции в этой базе данных. Это используется для отслеживания того, нужно ли очистить базу данных, чтобы предотвратить обращение идентификатора мультифакта или позволить сузить pg_multixact. Это минимум значений для каждой таблицы pg_class.relminmxid |
dattablespace |
oid (ссылается на pg_tablespace.oid) |
Табличное пространство по умолчанию для базы данных. В этой базе данных все таблицы, для которых pg_class.reltablespace равно нулю, будут храниться в этом табличном пространстве; в частности, там будут все несовместимые системные каталоги |
datcollate |
text |
LC_COLLATE для этой базы данных |
datctype |
text |
LC_CTYPE для этой базы данных |
daticulocale |
text |
локали ICU для этой базы данных |
datacollversion |
text |
Определенная провайдером версия сортировки. Это записывается при создании базы данных, а затем проверяется при ее использовании, чтобы обнаружить изменения в определении сортировки, которые могут привести к повреждению данных |
datacl |
aclitem[] |
Права доступа |