Personligen gillar jag inte program som tyst installerar standard PostgreSQL för Windows. Det är djupt irriterande att få inlägg från e-postlistor från folk som frågar "Vad är det här med PostgreSQL och varför använder den 88 bajillion megabyte RAM, jag bad inte om det, ta bort det nu!".
(Ja, jag pratar mest om ett visst irriterande spelkortsräkningsprogram med initialerna PT vars namn jag inte kommer att nämna direkt).
Om du ska paketera PostgreSQL skulle det vara bra om du kunde använda en icke-standardport och icke-standarddatakatalog. Om du installerar en tjänst för att automatiskt starta den, använd inte standardtjänstnamnet postgresql-[version]
men något som myapp-database
eller myapp-postgres
.
Allt detta görs mycket enklare om du bara paketerar PostgreSQL-binärerna i ditt installationsprogram och sedan skapar tjänsten själv med dina installationsverktyg eller via sc.exe
. Du kan välja att helt enkelt pg_ctl
starta/stoppa servern inifrån ditt program, även om detta kräver lite eftertanke om åtkomstbehörigheter till datakatalogen.
Nackdelen är att när det finns PostgreSQL-uppdateringar måste du uppdatera ditt installationsprogram. Å andra sidan vill du förmodligen inte personer som uppgraderar PostgreSQL oberoende av dina programuppdateringar.
Jag föreslår att du använder .zip-binärfilerna från här och bunta dem direkt i ditt installationsprogram.
Om du verkligen måste använda det körbara installationsprogrammet innehåller dokumentationen instruktioner om tyst installation .