Бэкап БД integraplanetearth — различия между версиями

Материал из Integra-S Wiki
Перейти к: навигация, поиск
(Новая страница: «==Бэкап БД integraplanetearth== В связи с особенностями архитектуры БД integraplanetearth следует избегать…»)
 
(Бэкап БД integraplanetearth)
Строка 3: Строка 3:
 
В связи с особенностями архитектуры БД integraplanetearth следует избегать переноса базы данных с помощью обычных бэкапов, так как в этом случае ломается разграничение прав доступа.
 
В связи с особенностями архитектуры БД integraplanetearth следует избегать переноса базы данных с помощью обычных бэкапов, так как в этом случае ломается разграничение прав доступа.
 
Самый оптимальный способ - перенос всего кластера целиком и подмены его на новой машине.
 
Самый оптимальный способ - перенос всего кластера целиком и подмены его на новой машине.
 +
Стоит отметить, что существуют проблемы бинарной совместимости между кластерами, развернутыми на разных версиях PostgreSQL, а также на разных операционных системах. Доказана несовместимость между версиями кластера для PostgreSQL 9.3 и 9.6, а также между кластерами, развернутыми на одной версии PostgreSQL, но на Windows и Linux. Поэтому рекомендуется брать кластер, полностью совместимый по версии PostgreSQL и версии ОС.
 +
 +
Ниже приведена последовательность действий для подмены кластера БД.
 +
 +
# Остановить службу PostgreSQL на машине, откуда копируем кластер БД. Внимание! Копирование кластера при работающей службе строго запрещено! Возможна потеря данных!
 +
# Скопировать папку с кластером(data или pg_data), также рекомендуется заархивировать ее.
 +
# На целевой машине остановить службу БД.
 +
# Удалить или переместить исходный кластер, заменив его версией, полученной на шаге 2.
 +
# Запустить службу PostgreSQL на целевой машине.
 +
# Подключиться к PostgreSQL, убедиться, что служба работает и кластер отдает данные.

Версия 13:36, 5 ноября 2020

Бэкап БД integraplanetearth

В связи с особенностями архитектуры БД integraplanetearth следует избегать переноса базы данных с помощью обычных бэкапов, так как в этом случае ломается разграничение прав доступа. Самый оптимальный способ - перенос всего кластера целиком и подмены его на новой машине. Стоит отметить, что существуют проблемы бинарной совместимости между кластерами, развернутыми на разных версиях PostgreSQL, а также на разных операционных системах. Доказана несовместимость между версиями кластера для PostgreSQL 9.3 и 9.6, а также между кластерами, развернутыми на одной версии PostgreSQL, но на Windows и Linux. Поэтому рекомендуется брать кластер, полностью совместимый по версии PostgreSQL и версии ОС.

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

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