Закончилось место на диске, удалить базу или таблицу в postgresql
НА сервере кончилось место, необходимо удалить базу или конкретную таблицу в postgres, сам postgres не запускается т.к. no space left on device
Ответы (1 шт):
Вот именно поэтому не нужно доводить раздел базы до состояния "меньше 5% свободного места". Всё верно, для старта базы может потребоваться дополнительное место на диске. Если вы хотите в этом вопросе поспорить с базой - значит вам не нужна эта база и можете просто удалить весь datadir. (риск необратимо повредить данные практически гарантированный)
Необходимо откуда-то достать немного места для запуска базы. Скорей всего для корректного запуска не хватает лишь нескольких мегабайт свободного места. Посмотрите, что на сервере можете удалить или временно куда-то перенести. Только не трогайте ничего в PGDATA базы: pg_wal, pg_clog, pg_xlog - это не логи, которые кто-то забыл удалить!
Если у вас на разделе с базой ext4 - проверьте осталось ли у вас reserved space.
sudo tune2fs -l /dev/.... | grep 'Reserved block count'
Можете временно уменьшить его
sudo tune2fs -m 1 /dev/sdb1
(затем верните к исходным 5%)
Это полезное свойство ext файловой системы часто позволяет запустить базу.