У меня есть таблица в моей базе данных, которая занимает 161 ГБ на жестком диске. Из 200-гигабайтного жесткого диска осталось всего 5 Гб свободного места.
Следующая команда показывает, что моя таблица занимает 161 ГБ на жестком диске,
select pg_size_pretty(pg_total_relation_size('Employee'));
В таблице около 527 строк. Теперь я удалил 250 строк. Я снова проверил pg_total_relation_size сотрудника. Еще размер 161гб.
Увидев вывод вышеуказанного запроса, я выполнил команду очистки:
VACUUM VERBOSE ANALYZE Employee;
Я проверил, действительно ли произошла ВАКУУМНАЯ ОЧИСТКА, используя,
SELECT relname, last_vacuum, last_autovacuum FROM pg_stat_user_tables;
Я могу видеть время последней очистки, совпадающее со временем выполнения команды ВАКУУМНАЯ.Я также выполнил приведенную ниже команду, чтобы увидеть, есть ли мертвые кортежи,
SELECT relname, n_dead_tup FROM pg_stat_user_tables
; Счетчик n_dead_tup для таблицы сотрудников равен 0.Тем не менее, после всех этих вышеперечисленных команд, если я запускаю
select pg_size_pretty(pg_total_relation_size('Employee'));
, он все еще показывает 161 ГБ.
Могу я узнать причину этого? Также, пожалуйста, поправьте меня, как освободить interface_list.