How to Set up Virtual Box and Vagrant on Windows
Inhaltsverzeichnis:
- Voraussetzungen
- PostgreSQL unter CentOS 8 installieren
- PostgreSQL-Rollen und Authentifizierungsmethoden
- Erstellen von PostgreSQL-Rollen und -Datenbanken
- Aktivieren Sie den Remotezugriff auf den PostgreSQL-Server
- Fazit
PostgreSQL oder Postgres ist ein allgemeines objektrelationales Open-Source-Datenbankverwaltungssystem mit vielen erweiterten Funktionen, mit denen Sie fehlertolerante Umgebungen oder komplexe Anwendungen erstellen können.
In diesem Handbuch wird erläutert, wie der PostgreSQL-Datenbankserver unter CentOS 8 installiert wird. Stellen Sie vor der Auswahl der zu installierenden Version sicher, dass Ihre Anwendungen dies unterstützen.
Wir werden auch die Grundlagen der PostgreSQL-Datenbankadministration untersuchen.
Voraussetzungen
Um Pakete installieren zu können, müssen Sie als root oder Benutzer mit sudo-Berechtigungen angemeldet sein.
PostgreSQL unter CentOS 8 installieren
Zum Zeitpunkt des Schreibens dieses Artikels sind zwei Versionen des PostgreSQL-Servers für die Installation über die Standard-CentOS-Repositorys verfügbar: Version 9.6 und 10.0.
Geben Sie Folgendes ein, um die verfügbaren PostgreSQL-Modul-Streams aufzulisten:
dnf module list postgresql
Die Ausgabe zeigt, dass das postgresql-Modul mit zwei Streams verfügbar ist. Jeder Stream hat zwei Profile: Server und Client. Stream 10 mit dem Profilserver ist die Standardeinstellung:
CentOS-8 - AppStream Name Stream Profiles Summary postgresql 10 client, server PostgreSQL server and client module postgresql 9.6 client, server PostgreSQL server and client module
-
Geben Sie Folgendes ein, um den Standarddatenstrom von PostgreSQL Server Version 10.0 zu installieren:
sudo dnf install @postgresql:10So installieren Sie den PostgreSQL-Server der Version 9.6:
sudo dnf install @postgresql:9.6
Möglicherweise möchten Sie auch das Contrib-Paket installieren, das mehrere zusätzliche Funktionen für die PostgreSQL-Datenbank bietet:
sudo dnf install postgresql-contrib
Sobald die Installation abgeschlossen ist, initialisieren Sie die PostgreSQL-Datenbank mit dem folgenden Befehl:
sudo postgresql-setup initdb
Initializing database… OK
Starten Sie den PostgreSQL-Dienst und aktivieren Sie ihn, um ihn beim Booten zu starten:
sudo systemctl enable --now postgresql
Verwenden Sie das
psql
Tool, um die Installation zu überprüfen, indem Sie eine Verbindung zum PostgreSQL-Datenbankserver herstellen und dessen Version drucken:
sudo -u postgres psql -c "SELECT version();"
PostgreSQL 10.6 on x86_64-redhat-linux-gnu, compiled by gcc (GCC) 8.2.1 20180905 (Red Hat 8.2.1-3), 64-bit
PostgreSQL-Rollen und Authentifizierungsmethoden
PostgreSQL verwaltet die Datenbankzugriffsberechtigungen nach dem Konzept der Rollen. Eine Rolle kann einen Datenbankbenutzer oder eine Gruppe von Datenbankbenutzern darstellen.
PostgreSQL unterstützt mehrere Authentifizierungsmethoden. Die am häufigsten verwendeten Methoden sind:
- Vertrauen - Eine Rolle kann eine Verbindung ohne Kennwort herstellen, solange die in der
pg_hba.confpg_hba.conf definierten Bedingungenpg_hba.confsind. Kennwort - Eine Rolle kann eine Verbindung herstellen, indem ein Kennwort angegeben wird. Die Passwörter können alsscram-sha-256,md5undpassword(Klartext) gespeichert werden.Ident - Wird nur bei TCP / IP-Verbindungen unterstützt. Es funktioniert, indem der Benutzername des Client-Betriebssystems mit einer optionalen Benutzernamenszuordnung abgerufen wird. Peer - Wie Ident, wird jedoch nur für lokale Verbindungen unterstützt.
Die PostgreSQL-
pg_hba.conf
wird in der Konfigurationsdatei mit dem Namen
pg_hba.conf
. Standardmäßig verwendet PostgreSQL für lokale Verbindungen die Peer-Authentifizierungsmethode.
Der
postgres
Benutzer wird automatisch erstellt, wenn Sie den PostgreSQL-Server installieren. Dieser Benutzer ist der Superuser für die PostgreSQL-Instanz. Es entspricht dem MySQL-Root-Benutzer.
Um sich als
postgres
Benutzer beim PostgreSQL-Server
postgres
, wechseln Sie zuerst zum Benutzer und greifen Sie dann mit dem Dienstprogramm
psql
auf die PostgreSQL-Eingabeaufforderung zu:
sudo su - postgres
psql
Von hier aus können Sie mit der PostgreSQL-Instanz interagieren. Geben Sie Folgendes ein, um die PostgreSQL-Shell zu verlassen:
\q
Sie können auch auf die PostgreSQL-Eingabeaufforderung zugreifen, ohne die Benutzer mit dem Befehl
sudo
zu wechseln:
sudo -u postgres psql
Normalerweise wird der Benutzer
postgres
nur vom localhost verwendet.
Erstellen von PostgreSQL-Rollen und -Datenbanken
Nur Superuser und Rollen mit
CREATEROLE
Berechtigungen können neue Rollen erstellen.
Im folgenden Beispiel erstellen wir eine neue Rolle mit dem Namen
john
, eine Datenbank mit dem Namen
johndb
, und erteilen Berechtigungen für die Datenbank.
-
Stellen Sie zunächst eine Verbindung zur PostgreSQL-Shell her:
sudo -u postgres psqlErstellen Sie eine neue PostgreSQL-Rolle mit dem folgenden Befehl:
create role john;Erstellen Sie eine neue Datenbank:
create database johndb;Gewähren Sie dem Benutzer Berechtigungen für die Datenbank, indem Sie die folgende Abfrage ausführen:
grant all privileges on database johndb to john;
Aktivieren Sie den Remotezugriff auf den PostgreSQL-Server
Standardmäßig überwacht der PostgreSQL-Server nur die lokale Schnittstelle
127.0.0.1
.
Öffnen Sie die Konfigurationsdatei, um den Remotezugriff auf Ihren PostgreSQL-Server zu aktivieren:
sudo nano /var/lib/pgsql/data/postgresql.conf
CONNECTIONS AND AUTHENTICATION
Abschnitt
CONNECTIONS AND AUTHENTICATION
und fügen Sie die folgende Zeile hinzu bzw. bearbeiten Sie sie:
#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;
Speichern Sie die Datei und starten Sie den PostgreSQL-Dienst neu mit:
sudo systemctl restart postgresql
Überprüfen Sie die Änderungen mit dem Dienstprogramm
ss
:
ss -nlt | grep 5432
LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*
Die Ausgabe oben zeigt, dass der PostgreSQL-Server auf allen Schnittstellen (0.0.0.0) den Standardport überwacht.
Im letzten Schritt konfigurieren Sie den Server so, dass er
pg_hba.conf
akzeptiert, indem Sie die Datei
pg_hba.conf
.
Nachfolgend einige Beispiele für verschiedene Anwendungsfälle:
/var/lib/pgsql/data/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD # The user jane can access all databases from all locations using an md5 password host all jane 0.0.0.0/0 md5 # The user jane can access only the janedb database from all locations using an md5 password host janedb jane 0.0.0.0/0 md5 # The user jane can access all databases from a trusted location (192.168.1.134) without a password host all jane 192.168.1.134 trust
Fazit
CentOS 8 bietet zwei PostgreSQL-Versionen: 9.6 und 10.0.
Weitere Informationen zu diesem Thema finden Sie in der PostgreSQL-Dokumentation
Centos Postgresql-DatenbankSo installieren und konfigurieren Sie redmine auf centos 7
Redmine ist eines der beliebtesten Tools für Open Source-Projektmanagement und Issue-Tracking. Dieses Tutorial behandelt die Schritte, die zur Installation und Konfiguration von Redmine unter CentOS 7 erforderlich sind.
So installieren und konfigurieren Sie vnc auf centos 7
In diesem Tutorial werden wir Sie durch die Schritte zur Installation und Konfiguration eines VNC-Servers auf einem CentOS 7-System führen. Wir zeigen Ihnen auch, wie Sie eine sichere Verbindung zum VNC-Server über einen SSH-Tunnel herstellen.
So installieren Sie postgresql auf centos 7
PostgreSQL oder Postgres ist ein allgemeines objektrelationales Open-Source-Datenbankverwaltungssystem. In diesem Tutorial zeigen wir Ihnen zwei verschiedene Methoden, wie Sie PostgreSQL auf Ihrem CentOS 7-Rechner installieren.







