Местоположение значения по умолчанию базы данных PostgreSQL на Linux

Каков каталог по умолчанию, где PostgreSQL сохранит все базы данных по Linux?

107
задан the Tin Man 23 June 2016 в 16:58
поделиться

2 ответа

Каталог "где postgresql будет хранить все базы данных" (и конфигурацию) называется "каталог данных" и соответствует тому, что PostgreSQL называет (немного путано) "кластером баз данных", что не имеет отношения к распределенным вычислениям, а просто означает группу баз данных и связанных с ними объектов, управляемых сервером PostgreSQL.

Расположение каталога данных зависит от дистрибутива. Если вы устанавливаете из исходного кода, по умолчанию используется /usr/local/pgsql/data:

В терминах файловой системы, кластер баз данных кластер будет представлять собой единый каталог в котором будут храниться все данные. Мы называем это каталогом данных или область данных. Это полностью зависит от вас где вы решите хранить свои данные. По умолчанию не существует, хотя такие места, как /usr/local/pgsql/data или /var/lib/pgsql/data являются популярными. (ref)

Кроме того, экземпляр работающего сервера PostgreSQL связан с одним кластером; расположение его каталога данных может быть передано демону сервера ("postmaster" или "postgres") в опции командной строки -D или переменной окружения PGDATA (обычно в области видимости запущенного пользователя, обычно postgres). Обычно можно увидеть работающий сервер примерно так:

[root@server1 ~]# ps auxw |  grep postgres | grep -- -D
postgres  1535  0.0  0.1  39768  1584 ?        S    May17   0:23 /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data

Обратите внимание, что возможно, хотя и не очень часто, запустить два экземпляра одного и того же сервера PostgreSQL (одинаковые двоичные файлы, разные процессы), которые обслуживают разные "кластеры" (каталоги данных). Конечно, каждый экземпляр будет слушать свой собственный порт TCP/IP.

125
ответ дан 24 November 2019 в 03:39
поделиться
/var/lib/postgresql/[version]/data/

По крайней мере, в Gentoo Linux и Ubuntu 14.04 по умолчанию.

Вы можете найти postgresql.conf и посмотреть на параметр data_directory. Если он закомментирован, то каталог базы данных совпадает с этим каталогом файла конфигурации.

60
ответ дан 24 November 2019 в 03:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: