Под этим обычно понимают контроль целостности – не повреждены ли индексы, таблицы и страницы. В PostgreSQL для этого есть расширение amcheck и контрольные суммы страниц.
Как проверить
- Установите amcheck (входит в стандартную поставку) и проверьте индекс на повреждения:
- Весь кластер разом удобнее проверить утилитой pg_amcheck из командной строки:
- Повреждения на диске ловят контрольные суммы. Проверьте, включены ли они:
CREATE EXTENSION IF NOT EXISTS amcheck;
SELECT bt_index_check('orders_pkey');
pg_amcheck --all --progress
SHOW data_checksums;
При значении on PostgreSQL сам обнаруживает битые страницы при чтении и пишет об этом в лог. Включить их можно утилитой pg_checksums (при остановленном сервере).