PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak zainstalować postgres z NSIS ze wszystkimi parametrami?

To prawie prawda.

Proszę nie użyj portu 5432 dla PostgreSQL. Wybierz port inny niż domyślny znacznie poza tym zakresem, na przykład 5599 lub coś takiego. Zmień port, modyfikując plik postgresql.conf i ustawiając port dyrektywa. Przydatne może być dodanie include_dir = conf.d lub podobny w głównym postgresql.conf następnie utwórz datadir\conf.d\myapp.conf z nadpisaniami konfiguracji.

Aby ustawić hasło dla initdb bez monitu przekaż --pwfile=/path/to/file opcja. Pierwsza linia zostanie odczytana jako hasło. Zobacz initdb.

Twój plan dezinstalacji jest rozsądny i poprawny.

Pomyśl jednak o ulepszeniach - nie zapchaj się w kąt. Będziesz chciał mieć możliwość zainstalowania 9.5 równolegle do 9.4 i pg_upgrade , chyba że chcesz po prostu użyć zrzutu i przywrócenia.

Proponuję zainstalować binaria PostgreSQL w %PROGRAMFILES%\MyApp\PostgreSQL\9.4 . Prawdopodobnie powinieneś umieścić bazę danych w %PROGRAMDATA%\MyApp\PostgreSQL\9.4 zamiast %PROGRAMFILES% Twojej aplikacji informator. (Instalator PostgreSQL powinien zrobić to samo; jego obecne zachowanie to historyczny artefakt, który należy naprawić).

Udokumentuj, że twoja aplikacja zawiera PostgreSQL, aby nikt go nie „sprzątał”, więc nie mamy kolejnej aplikacji wyrzucającej zdezorientowanych użytkowników na pgsql-general. Męczące staje się wyjaśnianie zły użytkownikom, że „my” nie zainstalowaliśmy PostgreSQL w ich systemie, nie możemy go usunąć, prawdopodobnie tam jest, ponieważ został zainstalowany przez coś, z czego korzystają, a jeśli go usuną, to przestanie działać . Podobnie męczące staje się wyjaśnianie użytkownikom, którzy właśnie zabili procesy PostgreSQL i usunęli katalog danych PostgreSQL, że nie możemy odzyskać ich bazy danych Poker Tracker (lub jakiejkolwiek innej), ponieważ właśnie ją usunęli...

Upewnij się, że Twoja aplikacja udostępnia funkcje wykonywania zrzutów i przywracania PostgreSQL dla użytkowników.

Instrukcja użytkownika musi jasno wyjaśniać, że muszą wykonać dodatkowe czynności związane z tworzeniem kopii zapasowych, aby chronić dane w Twojej aplikacji. Nie możesz po prostu użyć Kopii zapasowej systemu Windows, aby uzyskać niezawodną kopię zapasową PostgreSQL, ponieważ jest to wiele plików, które należy skopiować razem; skopiuje każdy plik OK, ale połączony wynik będzie bezużyteczny, chyba że PostgreSQL został zatrzymany przed wykonaniem kopii zapasowej. Aby wykonać kopię zapasową na żywo, musisz podjąć specjalne kroki - pg_start_backup() , kopiuj, pg_stop_backup() i zarchiwizuj dodatkowe segmenty WAL lub użyj pg_basebackup .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego nie mogę używać aliasów kolumn w następnym wyrażeniu SELECT?

  2. wartość jest za długa, aby zmienić znak typu (N)

  3. Arytmetyka kolumny daty w zapytaniu PostgreSQL

  4. Jak sprawić, by instalacja gem działała na OS X Lion z Ruby 1.8.7 bez błędów seg?

  5. Nielegalna instrukcja:4 podczas uruchamiania Django