Почему перемещение базы данных postgres на другой сервер меняет размер базы данных? - PullRequest
0 голосов
/ 04 сентября 2018

Я перемещаю базу данных postgres на другой сервер. Я использую следующие команды для выполнения дампа и загрузки.

pg_dump database_name_name > backup.sql // Dump

psql db_name < backup.sql // Load

Я обнаружил, что при перемещении размер новой базы данных составляет 28 МБ, тогда как размер старой базы данных составлял 36 МБ. Почему я должен волноваться, что этот шаг не завершен?

1 Ответ

0 голосов
/ 04 сентября 2018

Ожидается, что восстановленная база данных будет меньше оригинальной.

Живая база данных всегда имеет определенное количество раздувания (пустого пространства), которое вызывается обновлениями и удалениями. Это пространство будет использоваться повторно, и обычно это не проблема.

Восстановленная база данных плотно упакована и не имеет этого раздувания.

Тем не менее, раздувание более 25% скорее на высокой стороне.
Вы можете использовать pgstattuple , чтобы определить, имеет ли какая-либо из ваших таблиц чрезмерное количество раздувания.

Высокая раздувание может быть вызвано массовым удалением или высокой скоростью изменения, с которой не справляется автовакуум. Такие таблицы можно реорганизовать с помощью VACUUM (VERBOSE), и, если причиной является высокая скорость изменения, вам следует настроить автовакуум на более агрессивные таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...