Ich persönlich mag keine Programme, die das Standard-PostgreSQL für Windows stillschweigend installieren. Es ist zutiefst ärgerlich, Mailinglisten-Beiträge von Leuten zu erhalten, die fragen:„Was ist dieses PostgreSQL-Ding und warum verwendet es 88 Bajillionen Megabyte RAM, ich habe nicht danach gefragt, entfernen Sie es jetzt!“.
(Ja, ich spreche hauptsächlich von einem gewissen lästigen Glücksspiel-Kartenzählprogramm mit den Initialen PT, dessen Namen ich nicht direkt nennen werde).
Wenn Sie PostgreSQL bündeln möchten, wäre es großartig, wenn Sie einen nicht standardmäßigen Port und ein nicht standardmäßiges Datenverzeichnis verwenden könnten. Wenn Sie einen Dienst so installieren, dass er automatisch gestartet wird, verwenden Sie nicht den Standarddienstnamen postgresql-[version]
sondern so etwas wie myapp-database
oder myapp-postgres
.
Das geht alles viel einfacher, wenn Sie einfach die PostgreSQL-Binärdateien in Ihrem Installer bündeln und dann den Dienst selbst mit Ihren Installer-Tools oder über sc.exe
erstellen . Sie können einfach pg_ctl
auswählen starten/stoppen Sie den Server aus Ihrem Programm heraus, obwohl dies einige Überlegungen zu den Zugriffsberechtigungen für das Datenverzeichnis erfordert.
Der Nachteil ist, dass Sie bei PostgreSQL-Updates Ihr Installationsprogramm aktualisieren müssen. Andererseits wollen Sie das wahrscheinlich nicht Personen, die PostgreSQL unabhängig von Ihren Software-Updates aktualisieren.
Ich schlage vor, die .zip-Binärdateien von hier zu verwenden und bündeln Sie sie direkt in Ihrem Installationsprogramm.
Wenn Sie unbedingt das ausführbare Installationsprogramm verwenden müssen enthält die Dokumentation Anweisungen zur unbeaufsichtigten Installation .