Все комманды приведены для запуска из директории с конфигурационными файлами РТЛС В связи с принципиальными изменениями в версии 5 (от БД до конфигурации контейнеров) стандартная процедура обновления с сохранением данных не возможна. Данная процедура производит перенос конфигурации анкеров, меток и расчетного модуля из БД версии v4.3.12 в версию v5.0 |
Перед началом процедуры убедитесь что места достаточно для создания копии папки postgres/pgdata. Все комманды запускаются из папки rtls |
docker compose stop |
cp -R postgres/pgdata postgres/pgdata_bup |
запустить контейнер postgres
docker compose up -d postgres |
экспортировать конфигурацию в файл
docker compose exec -ti postgres su postgres -c 'pg_dump -d postgres -U postgres -n rtls_pu \ --exclude-table-data=rtls_pu.rtls_tag_blink \ --exclude-table-data=rtls_pu.rtls_mileage \ --exclude-table-data=rtls_pu.rtls_tag_sensor \ --exclude-table-data=rtls_pu.rtls_event \ --exclude-table-data=rtls_pu.rtls_area_log \ --exclude-table-data=rtls_pu.rtls_site_log \ -Fc -f /var/lib/postgresql/data/schema_v4.dmp' |
убедиться что в директории postgres появился файл postgres/schema_v4.dmp
ls -lh postgres/ |
docker compose stop postgres |
cd ../ && mv rtls rtls_v4 |
Все комманды запускаются из папки rtls |
cp ../rtls_v4/postgres/schema_v4.dmp ./postgres/ |
docker compose up -d postgres |
docker compose exec -ti postgres su postgres -c 'psql -d postgres -f /var/lib/postgresql/data/init.sql' docker compose exec -ti postgres pg_restore -d postgres -U postgres /var/lib/postgresql/data/schema_v4.dmp docker compose exec -ti postgres psql -d postgres -U postgres -c "ALTER SCHEMA rtls_pu RENAME TO rtls_old" |
запустить контейнер srv
docker compose up -d srv |
дождаться полного запуска контейнера srv (статус healthy)
docker ps |
импортировать сохраненные данные
docker compose exec -ti postgres su postgres -c 'psql -d postgres -f /var/lib/postgresql/data/move_v4.x_to_v5.0.sql' |
docker compose stop srv docker compose up -d |