Создаем скрипт "psql_truncate.sh":
psql -U postgres -d ut10 -c "TRUNCATE InfoRg1, InfoRg2;";
Создаем файл расписания очистки "cronsched.txt":
* * * * * sh /home/postgres/psql_truncate.sh
По расписанию скрипт запускается каждую минуту.
В расписание пользователя, под которым работает служба postgresql (в моем случае это postgres), добавляем запуск скрипта:
crontab /home/postgres/cronsched.txt
По документации https://postgrespro.ru/docs/postgrespro/9.5/sql-truncate место на диске действительно освобождается мгновенно.
Для проверки периодически вводил команду:
select pg_total_relation_size('_inforg1') as _inforg1, pg_total_relation_size('_inforg2') as _inforg2;
Размеры указаны в количестве страниц; одна страница = 8 Кб.
Результат проверки: https://yadi.sk/i/nWkZqs6M1SCuMg
psql -U postgres -d ut10 -c "TRUNCATE InfoRg1, InfoRg2;";
Создаем файл расписания очистки "cronsched.txt":
* * * * * sh /home/postgres/psql_truncate.sh
По расписанию скрипт запускается каждую минуту.
В расписание пользователя, под которым работает служба postgresql (в моем случае это postgres), добавляем запуск скрипта:
crontab /home/postgres/cronsched.txt
По документации https://postgrespro.ru/docs/postgrespro/9.5/sql-truncate место на диске действительно освобождается мгновенно.
Для проверки периодически вводил команду:
select pg_total_relation_size('_inforg1') as _inforg1, pg_total_relation_size('_inforg2') as _inforg2;
Размеры указаны в количестве страниц; одна страница = 8 Кб.
Результат проверки: https://yadi.sk/i/nWkZqs6M1SCuMg
Комментариев нет:
Отправить комментарий