# Миграции ## Создать миграцию ``` dotnet ef migrations add --project AsbCloudDb ``` ## Откатить миграцию ``` dotnet ef migrations remvoe --project AsbCloudDb ``` \ - Name of migration class. После создания миграции обязательно прочитать сгенерированый код. ## Применить миграции При старте проекта применяются автоматически ``` dotnet ef database update --project .\AsbCloudDb ``` # Backup and restore ## Backup Terminal: ``` sudo -u postgres pg_dump -Fc -U postgres postgres -W > dump_2021-11-26.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. Innit 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 psql -p 5499 -U postgres postgres -W < dump_2021-11-26.bak ``` OR psql: ``` \! pg_restore -Fc -d postgres dump_2021-11-26.bak ``` Then 'exit resore mode' psql: ``` SELECT timescaledb_post_restore(); ```