Сервер: Перенос данных прибора на другой сервер

(Различия между версиями)
Перейти к: навигация, поиск
Строка 1: Строка 1:
Для того чтобы перенести данные с одного locarus-server на другой нужно воспользоваться транслятором RawMirror.
+
Для того чтобы перенести данные с одного locarus-server на другой нужно воспользоваться транслятором '''RawMirror'''.
  
 
Алгоритм:
 
Алгоритм:
 
  1. Создать прибор на сервере 2, Включить драйвер и обратить внимание на флаг оптимизации. Должен совпадать со значением на сервере 1 (Не очень важно).
 
  1. Создать прибор на сервере 2, Включить драйвер и обратить внимание на флаг оптимизации. Должен совпадать со значением на сервере 1 (Не очень важно).
1.1. Прибор не должен быть выключен (иметь флаг Disabled)
+
  1.1. Прибор не должен быть выключен (иметь флаг Disabled)
 
  2. Проверить что порты ServerControl совпадают, по умолчанию 1333
 
  2. Проверить что порты ServerControl совпадают, по умолчанию 1333
  3. Добавить в TRUST сервера 2 адрес сервера 1. или сделать ALL
+
  3. Добавить в '''TRUST''' (Настройки -> Обмен данными) сервера 2 адрес сервера 1. или сделать ALL.
  4. На сервере 1, в поле MIRROR_DEPTH указать количество дней, за которое нужно передать данные. Если указан 0, то будут переданы все имеющиеся данные.
+
  4. Параметр '''MIRROR_DEPTH''' (Настройки -> Обмен данными)
  5. Создать транслятор RawMirror на сервере 1. Параметрами для него будет адрес сервера2 и порт ServerControl , например s2.example.com:1333
+
  4.1 Если нужно передать все данные по прибору, на сервере 1 следует указать '''MIRROR_DEPTH''' равный 0.
 +
  4.2 Если нужно передать не все данные, а только свежие и историю не старше '''N''' дней, то следует указать MIRROR_DEPTH равное '''N'''.
 +
  5. Создать транслятор '''RawMirror''' на сервере 1. Параметрами для него будет адрес сервера2 и порт '''ServerControl''' , например s2.example.com:1333
 
  6. Добавить прибор в транслятор
 
  6. Добавить прибор в транслятор
 
  7. Дождаться окончания трансляции
 
  7. Дождаться окончания трансляции
Строка 16: Строка 18:
 
Для постоянной трансляции только определенной группы приборов этот способ тоже можно использовать.
 
Для постоянной трансляции только определенной группы приборов этот способ тоже можно использовать.
  
Но если нужно иметь актуальную копию базы, то лучше смотреть в сторону потоковой репликации PostgreSQL.
+
Но если нужно иметь актуальную копию базы, то лучше смотреть в сторону потоковой репликации '''PostgreSQL'''.

Версия 14:30, 30 ноября 2021

Для того чтобы перенести данные с одного locarus-server на другой нужно воспользоваться транслятором RawMirror.

Алгоритм:

1. Создать прибор на сервере 2, Включить драйвер и обратить внимание на флаг оптимизации. Должен совпадать со значением на сервере 1 (Не очень важно).
  1.1. Прибор не должен быть выключен (иметь флаг Disabled)
2. Проверить что порты ServerControl совпадают, по умолчанию 1333
3. Добавить в TRUST (Настройки -> Обмен данными) сервера 2 адрес сервера 1. или сделать ALL.
4. Параметр MIRROR_DEPTH (Настройки -> Обмен данными)
  4.1 Если нужно передать все данные по прибору, на сервере 1 следует указать MIRROR_DEPTH равный 0.
  4.2 Если нужно передать не все данные, а только свежие и историю не старше N дней, то следует указать MIRROR_DEPTH равное N.
5. Создать транслятор RawMirror на сервере 1. Параметрами для него будет адрес сервера2 и порт ServerControl , например s2.example.com:1333
6. Добавить прибор в транслятор
7. Дождаться окончания трансляции
8. Удалить транслятор на сервер 1 и перезагрузить его для очистки транслятора.

Можно перенести несколько приборов. Для этого нужно выполнить шаги 1 и 6 для всех приборов.

Для постоянной трансляции только определенной группы приборов этот способ тоже можно использовать.

Но если нужно иметь актуальную копию базы, то лучше смотреть в сторону потоковой репликации PostgreSQL.

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты