PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment installer postgres avec NSIS avec tous les paramètres ?

C'est à peu près juste.

Veuillez ne pas utilisez le port 5432 pour PostgreSQL. Choisissez un port non par défaut bien en dehors de cette plage, comme 5599 ou quelque chose du genre. Changez le port en modifiant postgresql.conf et en définissant le port directif. Vous pourriez trouver utile d'ajouter simplement include_dir = conf.d ou similaire dans votre fichier principal postgresql.conf puis créez un datadir\conf.d\myapp.conf avec vos remplacements de configuration.

Pour définir le mot de passe pour initdb sans invite, passez le --pwfile=/path/to/file option. La première ligne sera lue comme mot de passe. Voir initdb.

Votre plan de désinstallation est raisonnable et correct.

Pensez aux mises à niveau cependant - ne vous peignez pas dans un coin. Vous voudrez pouvoir installer la 9.5 en parallèle de la 9.4 et de pg_upgrade , à moins que vous ne vouliez simplement utiliser le vidage et la restauration.

Je suggère d'installer les binaires PostgreSQL dans %PROGRAMFILES%\MyApp\PostgreSQL\9.4 . Vous devriez probablement mettre la base de données dans %PROGRAMDATA%\MyApp\PostgreSQL\9.4 au lieu du %PROGRAMFILES% de votre application annuaire. (Le programme d'installation de PostgreSQL devrait faire de même ; son comportement actuel est un artefact historique qui devrait être corrigé).

Veuillez documenter que votre application regroupe PostgreSQL afin que personne ne la "nettoie", et que nous n'ayons donc pas encore une autre application vomissant des utilisateurs confus sur pgsql-general. Il devient fatigant d'expliquer aux utilisateurs en colère que "nous" n'avons pas installé PostgreSQL sur leur système, nous ne pouvons pas le supprimer, il est probablement là parce qu'il a été installé par quelque chose qu'ils utilisent, et s'ils le suppriment, cela cessera de fonctionner . De même, il devient fatigant d'expliquer aux utilisateurs qui viennent de tuer les processus PostgreSQL et de supprimer leur répertoire de données PostgreSQL que nous ne pouvons pas récupérer leur base de données Poker Tracker (ou autre) car ils viennent de la supprimer...

Assurez-vous que votre application expose des fonctionnalités permettant d'effectuer des vidages et des restaurations PostgreSQL pour les utilisateurs.

Le manuel de l'utilisateur doit clairement expliquer qu'il doit prendre des mesures de sauvegarde supplémentaires pour protéger les données de votre application. Vous ne pouvez pas simplement utiliser Windows Backup pour obtenir une sauvegarde PostgreSQL fiable, car ce sont plusieurs fichiers qui doivent être copiés ensemble. il copiera chaque fichier correctement, mais le résultat combiné sera inutilisable à moins que PostgreSQL n'ait été arrêté avant la sauvegarde. Pour effectuer une sauvegarde en direct, vous devez suivre des étapes spéciales - pg_start_backup() , copier, pg_stop_backup() et archivez les segments WAL supplémentaires, ou utilisez pg_basebackup .