Бэкап БД integraplanetearth

Материал из Integra-S Wiki
Версия от 15:55, 6 ноября 2020; Wikiadmin (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Существующие ограничения бэкапов с БД integraplanetearth

В связи с особенностями архитектуры БД integraplanetearth следует избегать переноса базы данных с помощью обычных бэкапов(pg_dump / pg_restore), так как в этом случае ломается разграничение прав доступа. Самый оптимальный способ - перенос всего кластера целиком и подмены его на новой машине. Стоит отметить, что существуют проблемы бинарной совместимости между кластерами, развернутыми на разных версиях PostgreSQL, а также на разных операционных системах. Доказана несовместимость между версиями кластера для PostgreSQL 9.3 и 9.6, а также между кластерами, развернутыми на одной версии PostgreSQL, но на Windows и Linux. Поэтому рекомендуется брать кластер, полностью совместимый по версии PostgreSQL и версии Ос. В качестве эталонной базы для Windows и PostgreSQL 9.6 можно использовать https://nextcloud.integra-s.com:11100/index.php/s/9HrzRXwoSL65nHT

Последовательность действий для подмены кластера БД

Этап установки PostgreSQL на целевой машине опущен, за подробностями рекомендуется обратиться к соответствующей инструкции(например, Установка сервера в Windows)

  1. Остановить службу PostgreSQL на машине, откуда копируем кластер БД. Внимание! Копирование кластера при работающей службе строго запрещено! Возможна потеря данных!
  2. Скопировать папку с кластером(data или pg_data), также рекомендуется заархивировать ее.
  3. На целевой машине остановить службу БД.
  4. Удалить или переместить исходный кластер, заменив его версией, полученной на шаге 2.
  5. Запустить службу PostgreSQL на целевой машине.
  6. Подключиться к PostgreSQL, убедиться, что служба работает и кластер отдает данные.