Бывает так, что базы данных на Postgres сильно разрастаются в размере, в этом случае их можно сжать.
В статье будет несколько базовых команд по работе PostgresSQL и описание команды сжатия базы данных.
Рассматривать примеры работы будем на PostgresSQL 11.7 под операционной системой Windows.
⛔️ ВАЖНО. Выполнение любых операций с базой данных нужно производить при наличии актуальной резервной копии базы данных!
Инструкция по резервному копированию баз на PostgresSQL
1️⃣ Подключение к консоли psql
В меню Пуск в папке с программой PostgresSQL выбираем пункт — psql к 'postgres:
Для запуска консоли необходимо ввести пароль от пользователя системного пользователя postgres. После правильного ввода пароля можно выполнять команды для работы с базами данными:
2️⃣ Получить список баз данных Postgres
Команда: \l или \l+
Вторая команда показывает список баз и их размер. Может выполняться с задержкой, требуется время для подсчета размеров баз данных:
3️⃣ Подключение к базе данных Postgres
Команда: \с DatabaseName
4️⃣ Сжатие базы данных Postgres
После подключения к нужной базе выполняем команду:
vacuum full verbose; reindex database database_name;
Вместо database_name пишем имя нашей базы.
Выполнение команды может занять продолжительное время все зависит от размера база и производительности сервера.
После завершения операции, можно проверить размер текущей базы и сравнить его с изначальным.
Для получения информации о размере текущей базы можно выполнить команду:
select pg_size_pretty(pg_database_size(current_database()));
Видно, что исходный размер базы был 30Gb, после сжатия 22 Gb.
#1c #базаданных #postgres #резервноекопирование #серверы #windows