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

Материал из Integra-S Wiki
Перейти к: навигация, поиск
(Бэкап БД integraplanetearth)
Строка 1: Строка 1:
 
===Существующие ограничения бэкапов с БД integraplanetearth===
 
===Существующие ограничения бэкапов с БД integraplanetearth===
  
В связи с особенностями архитектуры БД integraplanetearth следует избегать переноса базы данных с помощью обычных бэкапов, так как в этом случае ломается разграничение прав доступа.
+
В связи с особенностями архитектуры БД integraplanetearth следует избегать переноса базы данных с помощью обычных бэкапов(pg_dump / pg_restore), так как в этом случае ломается разграничение прав доступа.
 
Самый оптимальный способ - перенос всего кластера целиком и подмены его на новой машине.
 
Самый оптимальный способ - перенос всего кластера целиком и подмены его на новой машине.
 
Стоит отметить, что существуют проблемы бинарной совместимости между кластерами, развернутыми на разных версиях PostgreSQL, а также на разных операционных системах. Доказана несовместимость между версиями кластера для PostgreSQL 9.3 и 9.6, а также между кластерами, развернутыми на одной версии PostgreSQL, но на Windows и Linux. Поэтому рекомендуется брать кластер, полностью совместимый по версии PostgreSQL и версии ОС.
 
Стоит отметить, что существуют проблемы бинарной совместимости между кластерами, развернутыми на разных версиях PostgreSQL, а также на разных операционных системах. Доказана несовместимость между версиями кластера для PostgreSQL 9.3 и 9.6, а также между кластерами, развернутыми на одной версии PostgreSQL, но на Windows и Linux. Поэтому рекомендуется брать кластер, полностью совместимый по версии PostgreSQL и версии ОС.
  
 
===Последовательность действий для подмены кластера БД===
 
===Последовательность действий для подмены кластера БД===
 
+
Этап установки PostgreSQL на целевой машине опущен, за подробностями рекомендуется обратиться к соответствующей инструкции(например, [[руководство_администратора:сервер:windows | Установка сервера в Windows]])
 
# Остановить службу PostgreSQL на машине, откуда копируем кластер БД. Внимание! Копирование кластера при работающей службе строго запрещено! Возможна потеря данных!
 
# Остановить службу PostgreSQL на машине, откуда копируем кластер БД. Внимание! Копирование кластера при работающей службе строго запрещено! Возможна потеря данных!
 
# Скопировать папку с кластером(data или pg_data), также рекомендуется заархивировать ее.
 
# Скопировать папку с кластером(data или pg_data), также рекомендуется заархивировать ее.

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

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

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

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

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

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