PostgreSQL: Erstellen eines Benutzers und einer Datenbank in PostgreSQL

Diese Dokumentation ist Teil des Erste Schritte-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Wie man mit PostgreSQL beginnt.

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet einen vollständig verwalteten PostgreSQL Cloud Service, der auf Zuverlässigkeit und Geschwindigkeit ausgelegt ist:

  • Unbegrenzte Verbindungen und Datenübertragungen für nahtlose Skalierung.
  • PgAdmin Web-Oberfläche inklusive für eine intuitive Datenbankverwaltung.
  • Beliebte Erweiterungen inklusive, wie PostGIS, TimescaleDB und PgVector.
  • Einfache Updates per Klick halten Ihre Datenbank sicher und aktuell.
  • Hohe Performance und starke Sicherheit auf privater, dedizierter Infrastruktur.

Sie können mit dem PostgreSQL Cloud Hosting von Stackhero in nur wenigen Minuten starten. Profitieren Sie von einer zuverlässigen Datenbanklösung und sparen Sie wertvolle Zeit beim Datenmanagement.

Standardmäßig wird ein admin-Benutzer mit administrativen Rechten erstellt. Es ist eine gute Praxis, für jedes Projekt, das Sie hosten möchten, einen dedizierten Benutzer und eine Datenbank zu erstellen.

Um die PgAdmin-Weboberfläche zu nutzen, öffnen Sie Ihre PostgreSQL-Domain mit HTTPS (zum Beispiel https://<XXXXXX>.stackhero-network.com). Melden Sie sich mit admin als Benutzername und dem Passwort an, das Sie in Ihrer Dienstkonfiguration festgelegt haben (sichtbar in Ihrem Stackhero-Dashboard).

  1. Gehen Sie zu Servers / PostgreSQL, klicken Sie mit der rechten Maustaste auf Login/Group Roles und wählen Sie Create / Login/Group Role:

    Erstellen eines Benutzers in PostgreSQL mit PgAdminErstellen eines Benutzers in PostgreSQL mit PgAdmin

  2. Legen Sie den Anmeldenamen fest:

    Benutzeranmeldung definierenBenutzeranmeldung definieren

  3. Legen Sie ein sicheres Passwort fest, um Brute-Force-Angriffe zu vermeiden:

    Benutzerpasswort definierenBenutzerpasswort definieren

  4. Stellen Sie schließlich sicher, dass nur das Privileg "Can login" ausgewählt ist:

    Benutzerrechte definierenBenutzerrechte definieren

Klicken Sie auf die Schaltfläche "Save", um Ihren Benutzer zu erstellen.

  1. Gehen Sie zu Servers / postgresql, klicken Sie mit der rechten Maustaste auf Databases und wählen Sie Create / Database...:

    Erstellen einer Datenbank mit PgAdminErstellen einer Datenbank mit PgAdmin

Es ist eine gute Praxis, denselben Namen für die Datenbank und den Benutzer zu verwenden. Wenn Ihr Projekt zum Beispiel "superWebsite" heißt, sollten Sie einen Benutzer namens "superWebsite" und eine Datenbank namens "superWebsite" erstellen.

  1. Legen Sie den Datenbanknamen fest und wählen Sie den Besitzer (den Benutzer, den Sie gerade erstellt haben):

    Datenbankname und Besitzer definierenDatenbankname und Besitzer definieren

Ihre Datenbank ist jetzt erstellt.

Um einen Benutzer in PostgreSQL mit der psql CLI zu erstellen, führen Sie die folgende SQL-Abfrage aus:

CREATE ROLE "myProject" WITH
  LOGIN
  NOSUPERUSER
  NOCREATEDB
  NOCREATEROLE
  NOINHERIT
  NOREPLICATION
  CONNECTION LIMIT -1
  PASSWORD 'secretPassword';

Vergessen Sie nicht, myProject durch Ihren Projektnamen und secretPassword durch ein sicheres Passwort zu ersetzen. Es ist auch eine gute Praxis, Ihren Projektnamen sowohl als Anmeldenamen als auch als Datenbanknamen zu verwenden. Wenn Ihr Projekt "superWebsite" heißt, sollten Sie einen Benutzer namens "superWebsite" und eine Datenbank namens "superWebsite" erstellen.

Sie können ein sicheres Passwort mit diesem Befehl generieren: openssl rand -base64 24 | tr -d '\n' | cut -c1-32

Um eine Datenbank in PostgreSQL mit der psql CLI zu erstellen, führen Sie die folgende SQL-Abfrage aus:

CREATE DATABASE "myProject"
  WITH
  OWNER = "myProject"
  ENCODING = 'UTF8'
  CONNECTION LIMIT = -1
  IS_TEMPLATE = false;

Es ist eine gute Praxis, denselben Namen für die Datenbank und den Benutzer zu verwenden. Wenn Ihr Projekt zum Beispiel "superWebsite" heißt, sollten Sie einen Benutzer namens "superWebsite" und eine Datenbank namens "superWebsite" erstellen.