Всякий раз, когда я обновляю свою схему базы данных из программного обеспечения (кода) с помощью нескольких миграций, выполнение некоторых операций с базой данных занимает много времени. Я понял pgstats, что что-то было напутано, и план запроса был изменен. Те же операции завершатся через 2-3 секунды после запуска ANALYZE вручную.
Углубившись в автоочистку и анализ, я понял, что она делает. Но мое требование - запустить ANALYZE после обновления моей схемы БД.
Мое приложение использует первый подход кода Entity framework. Схема базы данных обновляется при запуске и загрузке моего программного обеспечения. Несмотря на то, что мой параметр autovacuum postgres включен, он не запускается при обновлении схемы. Итак, мне нужно запустить ANALYZE после того, как мое программное обеспечение загрузится.
Как я могу запустить ANALYZE для всей базы данных из моего кода после загрузки программного обеспечения и непосредственно перед тем, как произойдет какое-либо нажатие? Это приложение C # WPF.