DBAtlas · Атлас эксплуатации баз данных

Логический бэкап (дамп)

Oracle

expdp system/password DIRECTORY=dpump_dir \
  SCHEMAS=hr DUMPFILE=hr_%U.dmp LOGFILE=hr_exp.log PARALLEL=4

Использует Data Pump. Объект DIRECTORY должен быть заранее создан через CREATE DIRECTORY. Для физических бэкапов используйте RMAN.

PostgreSQL

pg_dump -U postgres -h localhost -Fc -f db.dump mydb
# -Fc = compressed custom format (restored with pg_restore)

-Fc позволяет гибкое восстановление (выборочные таблицы/параллельно). Для всего кластера (включая роли) используйте pg_dumpall.

MySQL

mysqldump -u root -p --single-transaction \
  --routines --triggers --events mydb > db.sql

--single-transaction даёт согласованный бэкап без блокировок в InnoDB. Параллельные варианты для больших данных: mydumper/myloader или MySQL Shell util.dumpInstance()/dumpSchemas() (mysqlpump объявлен устаревшим в 8.0.34 и удалён в 8.4).

SQL Server

BACKUP DATABASE [MyDB]
TO DISK = N'C:\backup\MyDB_full.bak'
WITH COMPRESSION, CHECKSUM, INIT;

INIT перезаписывает существующий файл; для дописывания используйте NOINIT. Для бэкапа журнала используйте BACKUP LOG (в модели восстановления FULL).

MongoDB

mongodump --uri="mongodb://localhost:27017" \
  --archive=db.archive.gz --gzip --db=mydb

В шардированном кластере для согласованности делайте его через mongos при остановленном балансировщике.

Redis

BGSAVE
# Takes an RDB snapshot in the background (dump.rdb).
# Non-blocking copy: redis-cli --rdb /backup/dump.rdb

BGSAVE работает в фоне через fork; SAVE блокирует сервер (не используйте в продакшене). При включённом AOF теряется меньше данных.

Открыть в DBAtlas →