Voraussetzungen
- Ein Vultr-Server, auf dem Arch Linux auf dem neuesten Stand ist (siehe diesen Artikel ).
- Sudo Zugang.
- Befehlen, die als root ausgeführt werden müssen, wird ein Präfix vorangestellt
#
, und Befehle , die als normaler Benutzer ausgeführt werden können $
. Die empfohlene Methode zum Ausführen von Befehlen als Root besteht darin, jedem von ihnen als regulärer Benutzer ein Präfix voranzustellen sudo
.
Installieren Sie die PostgreSQL 11.1-Datenbank
Installieren Sie PostgreSQL:
# pacman -S postgresql
Wenn Sie das Btrfs-Dateisystem ausführen, sollten Sie in Betracht ziehen, Copy-on-Write für das Datenbankverzeichnis zu deaktivieren:
# chattr +C /var/lib/postgres/data/
Dieses Paket erstellt den Benutzer postgres
auf Ihrem System.
Initialisieren Sie den Datenbankcluster. Dies muss vom neuen postgres
Benutzer durchgeführt werden. Dieser Befehl führt dies aus, solange Ihr Benutzerkonto mit Sudo-Berechtigungen eingerichtet ist:
$ sudo -iu postgres initdb -D /var/lib/postgres/data
Starten Sie PostgreSQL und starten Sie es nach jedem Start:
# systemctl enable --now postgresql
Stellen Sie eine Verbindung zu PostgreSQL als Datenbankbenutzer her, der als Datenbankstammbenutzer postgres
fungiert:
# psql -U postgres
Dann legen Sie ein Passwort fest:
postgres-# \password postgres
Jetzt beenden:
postgres-# \q
Betrachten Sie eine Firewall
Möglicherweise möchten Sie eine Firewall konfigurieren. Standardmäßig überwacht PostgreSQL den Port 5432
nicht nur von localhost, sondern auch von überall auf Ihrer öffentlichen IP-Adresse. PostgreSQL genehmigt auch nur eingehende Verbindungen von localhost, aber externe Versuche erreichen PostgreSQL weiterhin und erhalten den folgenden Fehler : no pg_hba.conf entry for host
.
Obwohl PostgreSQL als ziemlich sicher angesehen wird, ist es sicherer, wenn eine Firewall nicht einmal externe Pakete an den PostgreSQL-Server sendet, es sei denn, dies ist unbedingt erforderlich. Selbst wenn ein direkter Fernzugriff gewünscht wird, wäre die Verwendung einer Firewall zum Blockieren des Datenverkehrs und eines VPN sicherer.
Bereiten Sie sich auf Upgrades vor
Standardmäßig pacman
wird PostgreSQL aktualisiert, wenn neue Versionen in den offiziellen Arch-Repositorys veröffentlicht werden, wenn Sie Ihr gesamtes Arch-System mit dem folgenden Befehl aktualisieren:
# pacman -Syu
Es wird dringend empfohlen, die Konfiguration so zu konfigurieren pacman
, dass Upgrades auf PostgreSQL nicht automatisch installiert werden. Wenn ein Upgrade veröffentlicht wird und Sie Ihr gesamtes Arch-System aktualisieren, pacman
werden Sie darüber informiert, dass eine neue Version verfügbar ist. Bearbeiten /etc/pacman.conf
und fügen Sie Folgendes hinzu:
IgnorePkg = postgresql*
Kleinere Versions-Upgrades verarbeiten
Wenn Sie feststellen, dass pacman
es sich um ein geringfügiges Versions-Upgrade handelt, z. B. 11.0
um 11.1
, lautet die Versionsrichtlinie von PostgreSQL, dass Sie das Upgrade sicher durchführen können. Es ist jedoch eine gute Idee, zuerst Ihre Datenbank zu sichern.
Um ein kleines Upgrade durchzuführen, stoppen Sie PostgreSQL und bestätigen Sie, dass es gestoppt ist:
# systemctl stop postgresql
# systemctl status postgresql
Erzwingen Sie dann ein Upgrade der Pakete:
# pacman -S postgresql postgresql-libs
Starten Sie PostgreSQL:
# systemctl start postgresql
Behandeln Sie wichtige Versions-Upgrades
Wenn sich pacman
herausstellt, dass es sich um ein größeres Versions-Upgrade handelt, z. B. 11.x
um 12.x
, wird empfohlen, die Website von PostgreSQL sowie die Website von Arch zu überprüfen, um festzustellen , ob Sie Schritte ausführen müssen, um ein ordnungsgemäßes Upgrade durchzuführen. In der Vergangenheit, wenn PostgreSQL solche Schritte angegeben hat, hat das Überspringen verhindert, dass Datenbanken funktionieren. Es wird dringend empfohlen, zuerst Ihre Datenbank zu sichern, da diese Upgrades riskanter sind.