In dieser Anleitung werden wir uns die Verbindungs -URLs in PostgreSQL ansehen.
Voraussetzungen
Um die in diesem Handbuch gezeigten Schritte auszuführen, benötigen Sie die folgenden Komponenten:
Optional können Sie ein PostgreSQL-Front-End so konfigurieren, dass sie mit einem GUI-Tool anstelle des Klassiker arbeiten können PSQL Hülse.
Prozentuale Kodierungswerte
Bei der Verwendung der URLs der PostgreSQL-Verbindung wird erwartet, dass sie auf prozentuelle Kodierungswerte stoßen. Das heißt, wenn es in der URL ein Zeichen mit einer besonderen Bedeutung gibt, muss es in den prozentualen Kodierungswert umgewandelt werden, damit die Bibliotheken und Apps ihn ordnungsgemäß interpretieren können.
Hier ist eine kurze Liste, die Sie beachten müssen:
PostgreSQL -Verbindungszeichenfolge
Bei der Entwerfen/Bereitstellung einer von Datenbank unterstützten Anwendung besteht einer der ersten Schritte darin, die App mit der richtigen Datenbank-Engine zu verbinden. Wenn es darum geht, die Verbindungsparameter bereitzustellen, kann dies in zwei Formaten erfolgen:
Einfache Schlüsselwort/Wertzeichenfolgen
$ host = localhost port = 5432 dbname = Demo_db Connection_timeout = 60Verbindungszeichenfolge
$ postgresql: //:@:/[?]Wo:
Hier ist ein Beispiel für eine PostgreSQL -Verbindungs -URL, die all diese Komponenten enthält:
$ postgresql: // host1: 123, host2: 456/somitb?target_session_attrs = any & application_name = myAppVerschiedene Verbindungs -URI -Komponenten
URL -Typspezifikation
Die Verbindungs -URL wird verwendet, um eine Verbindung zu einer PostgreSQL -Datenbank herzustellen. Es ist wichtig, die richtige Protokollspezifikation zu verwenden, damit die Apps und Bibliotheken die bereitgestellten Informationen im richtigen Kontext interpretieren können.
PostgreSQL akzeptiert die folgenden URL -Schema -Designatoren:
$ postgresql: //Benutzername und Passwort
Dieser Abschnitt der URI enthält die Benutzeranmeldeinformationen. Wenn Sie die Standardkonfiguration nicht verwenden, muss dieser Abschnitt enthalten sein.
Um nur den Benutzernamen anzugeben, können Sie die folgende URI -Struktur verwenden:
$ postgres: //@Wenn ein Passwort erforderlich ist, sieht die Syntax des Abschnitts so aus:
$ postgres: //:@Hostspezifikation
In diesem Abschnitt wird die Netzwerkadresse des PostgreSQL -Servers angegeben.
Wenn die Anwendung die Verbindung zum Standard -PostgreSQL -Port (5432) auf der lokalen Maschine versuchen soll, sieht die URI so aus:
$ postgers: // localhostWenn ein Benutzername und ein Passwort benötigt werden, sieht der aktualisierte URI so aus:
$ postgres: //: @localhostWenn sich der PostgreSQL-Server an einem Remote-Host befindet und/oder einen nicht standardmäßigen Anschluss anhört, ändert sich die URI-Struktur dramatisch. Zum Beispiel, um eine Verbindung zu einem PostgreSQL -Server herzustellen, der sich um 192 befindet.168.100.223 und um Port 4444 zuzuhören, sieht die Verbindungs -Uri so aus:
$ postgres: //:@192.168.100.223: 4444Wir können in diesem Abschnitt zusätzliche Informationen bereitstellen. Zum Beispiel die Fallback -Server. Wenn es einen Fallback PostgreSQL Server mit 192 gibt.168.100.100, das auf Port 3333 hört, können wir es dem folgenden Verbindungs -URI hinzufügen:
$ postgres: //:@192.168.100.223: 4444,192.168.100.100: 3333In diesem Beispiel versucht die Anwendung zunächst eine Verbindung zu einer Verbindung zu 192.168.100.223: 4444. Nach dem Scheitern versucht es, eine Verbindung zu der Fallback -Adresse herzustellen, die lautet 192.168.100.100: 3333.
Name der Datenbank
Dieser Abschnitt befasst sich mit der Datenbank, zu der die Anwendung verbunden ist. In PostgreSQL müssen Sie beim Erstellen einer Verbindung eine Verbindung zu einer bestimmten Datenbank herstellen.
Der Name der Datenbank ist zu deklarieren, beginnend mit einem Vorwärtsschrägstrich (/) und fährt bis zum Ende der Zeile oder eines Fragezeichens fort?).
Zum Beispiel um eine Verbindung zur Datenbank herzustellen Demo_DB Auf einem PostgreSQL -Server, der 192 hört.168.100.223: 4444, die Verbindungs -Uri sieht so aus:
$ postgres: //:@192.168.100.223: 4444/Demo_DBZusätzliche Parameter
Der letzte Teil des Verbindungs -URI ist für zusätzliche Verbindungsparameter reserviert. Die Liste beginnt mit einem Fragezeichen (?) und setzt sich bis zum Ende des URI fort.
Wie bereits erwähnt, sind die Parameter Schlüsselwertpaare. Der Wert eines Schlüssels wird durch ein gleiches Vorzeichen (=) getrennt und jedes Schlüsselwertpaar wird durch ein Ampers und) getrennt (&).
Zum Beispiel die Verbindungszeitüberschreitung Der Parameter deklariert die Zeitüberschreitung für die Verbindung in Sekunden. Um ein Timeout von 30 Sekunden anzuwenden, wenden Sie sie wie folgt auf den URI -Parameter von Verbindungen an:
$ postgres: //:@192.168.100.223: 4444/Demo_DB?connection_timeout = 30Ein weiterer Parameter, der ist SSLMode Ermittelt die Priorität einer sicheren SSL -TCP/IP -Verbindungsverhandlung. Wir können es dem folgenden Verbindungs -URI hinzufügen:
$ postgres: //:@192.168.100.223: 4444/Demo_DB?connection_timeout = 30 & sslMode = benötigenSchauen Sie sich die PostgreSQL -Dokumentation in der Liste der verfügbaren Verbindungsparameter an.
Verwenden des PostgreSQL -Verbindungs -URI
In diesem Abschnitt haben wir eine kurze Demonstration der Verwendung der PostgreSQL -Verbindungs -URI in Aktion vorgestellt. Beachten Sie, dass die Implementierung der Verbindungs -URI abhängig von der Programmiersprache, Modulen, Frameworks und anderen Faktoren variiert.
Hier verwenden wir die Verbindungs -URI mit PSQL Um eine Verbindung zu der gewünschten Datenbank herzustellen. Im Allgemeinen eine Verbindung zu einer Datenbank in PSQL, Der Befehl lautet wie folgt:
$ PSQL - -host = - -dbname = --username = -port =Zum Beispiel, um eine Verbindung zu der Demo_DB -Datenbank herzustellen, die auf einem lokalen PostgreSQL -Server gehostet wird, der Port 5432 als Postgres hört, sieht der Befehl so aus:
$ pSQL -host = localhost - -dbname = Demo_db --username = postgres --port = 5432Es gibt auch andere Möglichkeiten, eine Verbindung zu einer PostgreSQL -Datenbank herzustellen. Beispielsweise verwenden Sie den folgenden Verbindungs -URI:
$ psql postgres: //:@:/Mit der Struktur können wir einen einfacheren Befehl erstellen, um eine Verbindung zur Demo_DB -Datenbank herzustellen:
$ psql postgres: // postgres@localhost/deMo_dbAbschluss
In diesem Leitfaden haben wir die PostgreSQL -Verbindungs -URI, wie man die verschiedenen Komponenten interpretiert. Die Verbindungs -URI ist eine interessante Möglichkeit, alle erforderlichen Informationen für eine Verbindung zu einer bestimmten Datenbank in einer einzigen Zeichenfolge zu codieren. Wir haben auch gezeigt, wie eine Verbindungs -URI verwendet wird, um eine Verbindung zu einer PostgreSQL -Datenbank herzustellen.
Möchten Sie mehr über Postgresql erfahren? Schauen Sie sich die Kategorie PostgreSQL an.