У меня довольно большая база данных postgres на Amazon RDS (около 9 ГБ в сжатом виде), и иногда нам нужно скопировать ее и провести некоторые тесты на наших локальных машинах.
Создание дампа БД (pg_dump) и его загрузка - это слишком медленно, и, честно говоря, последние несколько раз мы просто застревали.
Есть ли простой способ разумно получить части БД? например, получить только изменения за последние 10 дней, а затем мы можем объединить их с локальной БД, которая у нас есть, или, может быть, получить БД частями и т. д.?
Я уверен, что я не первый, кому это нужно, но не смог найти достойного метода или руководства, чтобы объяснить, как это сделать.
Спасибо!
Сжатый дамп 9 ГБ на самом деле не такой большой. Вам просто нужно сделать все правильно:
--format=directory
или -Fd
) - автоматически сжимается;--jobs=16
или -j16
) и параллельное восстановление;sslmode=disable
в строке подключения или env PGSSLMODE=disable pg_dump …
отключить SSL - некоторые версии AWS RDS имеют ограничение в 64 ГБ данных SSL для одного подключения;