Размер резервной копии Postgres сам по себе удваивается - PullRequest
1 голос
/ 14 июня 2019

Я совершенно новичок в Postgres. Мне нужно было сделать резервную копию базы данных Postgres. Я использовал команду ниже, чтобы сделать резервную копию.

    pg_dump Live backup > Livebackup.bak

Резервная копия была взята. Однако размер файла резервной копии в два раза больше исходного размера базы данных. (Размер базы данных составлял 43 ГБ, а размер резервной копии - 86 ГБ). Файл резервной копии должен иметь размер около или ~ размера базы данных.

Я уже сделал полный вакуум в этой базе данных. но размер резервной копии все же больше.

1 Ответ

3 голосов
/ 14 июня 2019

В соответствии с pg_dump docs формат по умолчанию - "обычный текст".Это означает, что pg_dump генерирует большой SQL-скрипт, который затем можно импортировать с помощью командной строки psql.

Поскольку это простой текст, любые числовые или временные типы будут занимать гораздо больше места, чем они.в базе данных (где они могут храниться в виде целых чисел, чисел с плавающей запятой или в двоичном формате и т. д.).Меня не удивляет, что ваш файл резервной копии больше, чем ваша база данных.

Я рекомендую взглянуть на опции -F/--format и -Z/--compress для pg_dump и найти наилучший метод для вашего варианта использования.

У меня обычно есть резервные копии, которые занимают около 10-15% размера базы данных, используя эти флаги.

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