forked from ddrilling/AsbCloudServer
Olga Nemt
0adf95c370
- в эксель файле значения авто/ручной промаркированы значениями 0/1 - в эксель файле "определение углов осцилляции" поправлена шапка - добавлен скрипт по обновлению сиквенсов в readme.md
74 lines
1.6 KiB
Markdown
74 lines
1.6 KiB
Markdown
# Миграции
|
|
## EF tools
|
|
https://docs.microsoft.com/ru-ru/ef/core/cli/dotnet
|
|
|
|
Установка:
|
|
```
|
|
dotnet tool install --global dotnet-ef
|
|
```
|
|
Обновление:
|
|
```
|
|
dotnet tool update --global dotnet-ef
|
|
```
|
|
|
|
## Создать миграцию
|
|
```
|
|
dotnet ef migrations add <MigrationName> --project AsbCloudDb
|
|
```
|
|
## Откатить миграцию
|
|
```
|
|
dotnet ef migrations remove --project AsbCloudDb
|
|
```
|
|
Удаляется последняя созданная миграция.
|
|
|
|
## Применить миграции
|
|
При старте проекта применяются автоматически
|
|
```
|
|
dotnet ef database update --project .\AsbCloudDb
|
|
```
|
|
|
|
# Backup and restore
|
|
## Backup
|
|
Terminal:
|
|
```
|
|
sudo -u postgres pg_dump -Fc -U postgres postgres -W > dump_2022-03-09.bak
|
|
```
|
|
|
|
## Restore backup
|
|
### Step 1. (Re)Create DB and schema IF needed.
|
|
psql:
|
|
```
|
|
--drop schema public cascade;
|
|
CREATE DATABASE postgres;
|
|
\c postgres
|
|
create schema public;
|
|
```
|
|
|
|
### Step 2. Init timescaledb and prepare DB to restore
|
|
```
|
|
CREATE EXTENSION IF NOT EXISTS timescaledb;
|
|
SELECT timescaledb_pre_restore();
|
|
```
|
|
|
|
### Step 3. Restore DB, then [Longest operation]
|
|
Terminal:
|
|
```
|
|
sudo -u postgres pg_restore -Fc -d postgres dump_2021-11-26.bak
|
|
```
|
|
OR psql:
|
|
```
|
|
\! pg_restore -Fc -d postgres dump_2021-11-26.bak
|
|
```
|
|
win:
|
|
pg_restore -Fc -d postgres -U postgres -W dump_2022-01-11.bak
|
|
Then 'exit restore mode' psql:
|
|
```
|
|
SELECT timescaledb_post_restore();
|
|
```
|
|
|
|
# SEQUENCES
|
|
Обновление Sequence (на примере t_process_map_plan_rotor):
|
|
|
|
```
|
|
SELECT setval('t_process_map_plan_rotor_id_seq', (select max(id) from t_process_map_plan_rotor), true);
|
|
``` |