Резервное копирование и миграция Tvip TMS на другой сервер

Создание резервной копии Базы данных PostgreSQL

Сделать резервную копию базы данных можно с помощью утилиты pg_dump:

pg_dump --no-owner  -U tvip-tms tvip-tms  >  /backup/tvip-tms.sql

Подсказка

C помощью параметра --exclude-table-data можно исключить таблицы, которые не требуют резервирования, для уменьшения размера файла резервной копии и ускорения процесса восстановления:

pg_dump --no-owner --exclude-table-data=device_stat_channel -U tvip-tms tvip-tms  >  /backup/tvip-tms.sql

При необходимости сделайте резервные копии дополнительных баз данных:

pg_dump --no-owner -U tvip-tms tvip-tms-audit >  /backup/tvip-tms-audit.sql
pg_dump --no-owner -U tvip-tms tvip-tms-vod >  /backup/tvip-tms-vod.sql

Скопируйте резервную копию базы данных помощью утилиты scp:

scp /backup/tvip-tms.sql username@host:/backup/

Восстановление из резервной копии Базы данных PostgreSQL

Убедитесь, что система соответствует минимальным требованиям TVIP TMS.

Перед установкой TVIP TMS необходимо установить базу данных и восстановить данные из резервной копии.

Установите и проверьте, что выбрана локаль: [*] en_US.UTF-8 UTF-8. При необходимости добавьте необходимые вам локали.

sudo apt -y install postgresql

Создайте базу данных с именем tvip-tms и пользователя tvip-tms:

su -c "createuser tvip-tms && createdb -O tvip-tms tvip-tms" postgres

При необходимости создайте дополнительные базы данных:

su -c "createdb -O tvip-tms tvip-tms-audit" postgres
su -c "createdb -O tvip-tms tvip-tms-vod" postgres

Измените параметры доступа к postgres:

sed -i /etc/postgresql/*/main/pg_hba.conf -e "s|local   all             all                                     peer|local   all             all                                     trust|"
sed -i /etc/postgresql/*/main/pg_hba.conf -e "s|host    all             all             127.0.0.1/32            md5|host    all             all             127.0.0.1/32            trust|"
sed -i /etc/postgresql/*/main/pg_hba.conf -e "s|host    all             all             127.0.0.1/32            scram-sha-256|host    all             all             127.0.0.1/32            trust|"
systemctl reload postgresql

Восстановление резервной копии базы данных:

psql -U tvip-tms tvip-tms  < /backup/tvip-tms.sql

При необходимости восстановите также дополнительные базы данных:

psql -U tvip-tms tvip-tms-vod  < /backup/tvip-tms-vod.sql
psql -U tvip-tms tvip-tms-audit  < /backup/tvip-tms-audit.sql

Сбросьте значение для auth key:

psql -U tvip-tms tvip-tms
update device set authkey = null;
\q

Установите TVIP TMS.

Внимание

Для миграции устройств без запроса логина и пароля включите опцию Allow Quick Binding в настройках провайдера.

При необходимости измените ip адрес вашего сервера TVIP TMS или перенаправьте DNS на новый TVIP TMS сервер.

Создание и восстановление резервной копии MongoDB

Предупреждение

Создание резервной копии базы данных MongoDB является обязательным в случае необходимости переноса или создания резервной копии базы данных VOD. В противном случае изображения связаннные с контентом из базы данных VOD (постеры фильмов, скриншоты серий и т.д.) будут отсутствовать в системе после её импорта.

Создайте резервную копию базы данных MongoDB, с помощью утилиты mongodump:

mongodump --db images --gzip --archive > /mongoBackup/images.dump.gz

Установите базу данных MongoDB на новом сервере:

apt install mongodb-org
systemctl start mongod.service
systemctl enable mongod.service

Восстановите резервную копию MongoDB, с помощью утилиты mongorestore:

mongorestore --gzip --archive=/mongoBackup/images.dump.gz

Примечание

Если необходимо сохранить статистику, то сохраните и восстановите резервную копию для базы данных content:

mongodump --db content --gzip --archive > /mongoBackup/content.dump.gz
mongorestore --gzip --archive=/mongoBackup/content.dump.gz