Написание установщика, который также управляет установкой БД, сам по себе является проектом.Большой вопрос в том, нужно ли вам устанавливать PostgreSQL с нуля, или вы скажете пользователю сначала установить его самостоятельно?
Я попытался сделать что-то подобное, и в итоге я создал сборку с NSIS, которая включаетPostgres и JRE в комплекте установки вместе с моей программой.Установщик копирует все в место установки пользователя и создает все необходимые файлы конфигурации.
Самая большая проблема, с которой я столкнулся, заключалась в том, что у меня было несколько опций конфигурации, которые нужно было представить пользователю, что потребовало бы много времени на программирование.в NSIS.Итак, я изменил сценарии сборки ANT, которые я уже написал, для создания проекта.Затем NSIS копирует JRE во временную папку и запускает графический интерфейс установщика Java , который я написал вместо этого, который собирает всю информацию о конфигурации и запускает ANT в фоновом режиме.
Если вы не используетене нужно много настраивать, или то, что вам нужно настроить, не имеет много опций, тогда вы, вероятно, можете делать все непосредственно в NSIS.Но имейте в виду, что вам тоже нужно быть в безопасности.Как вы создаете нового пользователя для запуска Postgres?Как насчет прав доступа к каталогу для вашей установки?Кто может запускать и останавливать БД, кто может читать файлы БД и т. Д.?