powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Запуск нескольких экземпляров postgres на одном сервере
11 сообщений из 11, страница 1 из 1
Запуск нескольких экземпляров postgres на одном сервере
    #39919305
depresnak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, необходимо запустить нескольких экземпляров postgres версии 11 на одном сервере, не совсем понимаю как это сделать.
В postgres я новичок, из того что прочитал в мануалах реализовать это можно с помощью кластера postgres на разных портах. Практической части с реализацией я не нашёл только теория, интересует каким образом это воплотить.

Необходимо будет создать для каждой базы данных путь к базе посредством команды
pg-setup initdb -D /usr/local/pgsql/data1 pg-setup set-server-port 5432
pg-setup initdb -D /usr/local/pgsql/data2 pg-setup set-server-port 5433
.
.
.
initdb -D /usr/local/pgsql/dataN set-server-port N

так-же в документации указано что:
"Команда initdb не будет работать, если указанный каталог данных уже существует и содержит файлы; это мера предохранения от случайной перезаписи существующей инсталляции."

В моем случае базы будут переноситься с помощью pg_basebackup и в дальнейшем будет производиться репликация используя этот сервер как slave.

Возникают следующие вопросы:
1. Правильно ли я представляю организацию запуска нескольких экземпляров postgres с помощью создания кластеров?
2. Существует ли другой метод запуска экземпляров postgres с указанием порта и пути базы данных, скажем через переменные и скрипт?
3. Каким образом осуществляется подключение к тому или иному экземпляру postgres (я так понимаю они будут объединены, но в моем случае базы называются одинаково)?
4. Можно-ли будет перенести в каталоги заданные под кластеры базы с помощью pg_basebackup?
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919344
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
initdb -D path/ или pg_basebackup -D path/
потом редактируете конфиг как нравится, попутно меняете номер порта
потом pg_ctl -D path/ start

Всё что касается postgresql.

Скорей всего вы захотите завести эти кластера в инит-систему. Смотрите документацию к своей системе.
Например, в пакетах ubuntu/debian есть замечательные наборы утилит pg_ctlcluster для управления множеством инстансов postgresql, хорошо интегрированные в инит.
Для centos (емнип, pg-setup это оттуда) такого нет, init предполагает только одну базу указанной major версии. Так что дополнительные сервисы заводятся отдельно администратором.

авторКаким образом осуществляется подключение к тому или иному экземпляру postgres (я так понимаю они будут объединены, но в моем случае базы называются одинаково)?
Не будут никак объединены. Полностью независимы. Подключаться с указанием нужного номера порта.

авторМожно-ли будет перенести в каталоги заданные под кластеры базы с помощью pg_basebackup?
Да, разумеется.
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919372
Sergej Grischenkow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используйте DOCKER
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919378
depresnak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо

Melkij
initdb -D path/ или pg_basebackup -D path/
потом редактируете конфиг как нравится, попутно меняете номер порта
потом pg_ctl -D path/ start


я правильно понимаю меняю конфиг postgresql.auto.conf указываю
data_directory =
port =
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919426
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
depresnak,

зависит от вашего как администратора желания. postgresql.conf может располагаться в $PGDATA (это дефолт для сборки из исходников) и тогда data_directory не указывается. Может располагаться где-то ещё, но тогда при старте базы вы должны указать где ей искать конфиг.
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919645
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergej Grischenkow
Используйте DOCKER


+100500
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919759
depresnak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kolobok0, к сожалению для моих нужд нужен полноценный сервер
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919859
jan2ary
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
depresnak
kolobok0, к сожалению для моих нужд нужен полноценный сервер
А чем докер не полноценный?
Унифицированный образ, под данные монтируете разные вольюмы, назначаете разные порты.
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919871
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jan2ary
под данные монтируете разные вольюмы, назначаете разные порты.

Как говорится найдите 5 отличий от простого запуска нескольких экземпляров базы.
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39919877
Sergej Grischenkow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отличия есть... и в пользу DOCKER"а
Для тех кто не любит сторонние "поделки" - можно и LXC (контейнеры) использовать.
...
Рейтинг: 0 / 0
Запуск нескольких экземпляров postgres на одном сервере
    #39920204
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
depresnak,

Если бы Вы знали на чём крутятся известные в РФ магазины и как оно устроено внутри...
Высказывания о полноценности забылись бы на долго ..

удачи вам
(круглый)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Запуск нескольких экземпляров postgres на одном сервере
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]