Voraussetzungen:
Um die in diesem Handbuch gezeigten Schritte auszuführen, benötigen Sie die folgenden Komponenten:
PostgreSQL -Datenbanken
PostgreSQL ist ein kostenloses und open-Source-SQL-konforme Objektrelationsdatenbanksystem. Es kann sowohl mit relationaler (SQL) als auch nicht-relationaler (JSON) -Anterfragen funktionieren. Erfahren Sie mehr über die Funktionen von Postgresql.
In PostgreSQL lautet die Datenhierarchie wie folgt:
Jede PostgreSQL -Instanz kann mehrere Client -Verbindungen akzeptieren. Der Client muss den Datenbanknamen in der Verbindungsanforderung angeben. Es ist nur eine Datenbank pro Verbindung zulässig. Ein Client kann jedoch mehrere Verbindungen zum Server öffnen und gleichzeitig eine Verbindung zu einem oder mehreren Datenbanken herstellen.
Erstellen einer Datenbank in PostgreSQL
Öffnen einer Verbindung zum Server
Um eine neue Datenbank zu erstellen, stellen Sie zuerst eine Verbindung zum PostgreSQL -Server her:
$ sudo -i -u postgres
$ psql
Beachten Sie, dass die Erstellung der Datenbank eine eingeschränkte Operation ist. Nur Benutzer mit ausreichender Privilegien dürfen die Aktion ausführen.
2. Auflistung der aktuellen Datenbanken
Führen Sie die folgende Abfrage in PSQL aus, um die Liste der Datenbanken auf dem Server zu drucken:
$ \ Liste
Während der Installation erstellt PostgreSQL die erste Datenbank des Servers, die "Postgres" lautet, "Postgres". Es werden auch zwei weitere Datenbanken erstellt:
Erstellen Sie keine Objekte in "template1", es sei denn, Sie möchten, dass sie Teil jeder neu erstellten Datenbank sind. Wenn „Template1“ geändert wird, kann „Template0“ kloniert werden, um eine neue Datenbank ohne stellvertretende Ergänzungen zu erstellen.
3. Erstellen einer neuen Datenbank
Führen Sie die folgende Abfrage in PSQL aus, um eine neue Datenbank zu erstellen:
$ Datenbank erstellen;
Hier:
Überprüfen Sie die Liste der Datenbanken, wenn die Aktion mit dem folgenden Befehl erfolgreich ist:
$ \ Liste
Mit einem privilegierten Konto können wir auch eine Datenbank für jemand anderen mit dem folgenden Befehl erstellen:
$ Datenbank erstellenEIGENTÜMER ;
Der Befehl createdb
In der vorherigen Methode mussten wir mehrere Schritte durchlaufen, um eine Datenbank zu erstellen:
Um den Prozess zu optimieren, wird PostgreSQL mit dem Befehl CreatedB geliefert. Es fungiert im Grunde genommen als Wrapper für diese Aktionen. Wir können den Befehl createdb direkt aus der Shell ausführen.
1. Erstellen einer Datenbank mit CreatedBB
Verwenden Sie den folgenden Befehl, um eine Datenbank mit dem Standarddatenbankserver zu erstellen:
$ erstellte
Überprüfen Sie die Aktion mit dem folgenden Befehl:
$ psql -c "\ list"
Mit verschiedenen Optionen können wir auch die erstellten Operationen optimieren. Schauen Sie sich das folgende Beispiel an:
$ createdb -h-P -T -e --username = --Passwort-Wartung-DB =
Hier:
Zeit, es in Aktion zu setzen. Führen Sie den folgenden Befehl CreatedB aus:
$ createdb -h localhost -p 5432 -t template0 -e --username = postgres test_db
Wie die Ausgabe schon sagt, entspricht es der folgenden Abfrage:
$ Erstellen Datenbank test_db template semplate0;
Zusätzliche Datenbankverwaltung
Schauen wir uns in diesem Abschnitt andere Datenbankverwaltungsvorgänge an.
Auflistung der Datenbanken
Es gibt einige Möglichkeiten, die Datenbanken aufzulisten, die auf dem Server gespeichert sind. In den vorherigen Abschnitten haben wir bereits eine Methode demonstriert:
$ \ Liste
Eine andere Möglichkeit besteht darin, den Systemkatalog „pg_database“ zu untersuchen:
$ Select datName aus pg_database;
Löschen einer Datenbank
Führen Sie die folgende Abfrage aus, um eine Datenbank zu löschen:
$ Drop -Datenbank;
Ähnlich wie bei CreatedB wird auch PostgreSQL mit dem DropDB -Befehl aus der Shell ausgestattet. Schauen Sie sich das folgende Beispiel an:
$ Dropdb -h-P --Benutzername = --Passwort -e
Hier:
Beachten Sie, dass der Benutzer über ausreichende Berechtigungen verfügen muss, um eine Datenbank zu löschen.
Ändern eines Datenbankbesitzes
Der Eigentümer einer Datenbank kann eine Aktion in der Datenbank ausführen, einschließlich des Löschens der Datenbank. Standardmäßig wird der Benutzer, der die Datenbank erstellt hat, als Eigentümer zugewiesen. Wir können das Eigentum jedoch einem anderen Benutzer übertragen.
Führen Sie die folgende Abfrage in PSQL aus, um den Eigentümer der Datenbank zu ändern:
$ Alter -DatenbankBesitzer zu ;
Dies ändert jedoch nicht das Eigentum der Objekte in der Datenbank (einschließlich Tabellen). In solchen Fällen müssen wir eine andere Frage verwenden. Stellen Sie eine Verbindung zur Zieldatenbank her und führen Sie die folgende Abfrage aus:
$ Resign im Besitz vonZU ;
Diese Abfrage ist zwar bequem und verfügt über ein paar Einschränkungen:
Bonus: Die Anfragen aus der Shell ausführen
Bisher führen wir die Abfragen aus der Postgresql -Konsole aus. Was ist, wenn Sie einige Datenbankfunktionen in Ihre Skripte integrieren möchten?? Die Befehle für erstellte und dropdb können nur spezifische Operationen ausführen.
Um dies zu lösen, können wir PSQL als Kanal verwenden. Neben der standardmäßigen interaktiven Shell kann PSQL auch die Abfragen im laufenden Fliegen ausführen.
Methode 1:
Die Befehlsstruktur lautet wie folgt:
$ psql -h-P -U -D -C
Hier:
Methode 2:
Postgresql wird mit einem weiteren interessanten Feature geliefert: Verbindungs -URI. Es ist eine clevere Art, alle Verbindungsparameter ordentlich zu kodieren. Die Struktur eines Verbindungs -URI lautet wie folgt:
$ postgresql: //: @ : /
Hier:
Verwenden Sie den folgenden PSQL -Befehl, um eine Verbindung zu einer Datenbank mit dem Verbindungs -URI herzustellen:
$ psql -d-C
Abschluss
Wir haben verschiedene Möglichkeiten zum Erstellen von Datenbanken in PostgreSQL gelernt. Wir haben gezeigt, wie Sie eine Datenbank mithilfe der Datenbankabfrage erstellen. Wir haben auch die Datenbankerstellung mit dem Befehl CreatedB vorgestellt. Darüber hinaus haben wir einige andere wichtige Datenbankverwaltungsaktionen wie das Löschen von Datenbanken und das Ändern des Eigentümers beschönigt.
Möchten Sie mehr über Postgresql erfahren? Schauen Sie sich die PostgreSQL-Unterkategorie an, die zahlreiche Anleitungen für verschiedene Merkmale enthält. Zum Beispiel: Funktionen, reguläre Ausdrücke, Tabellen und vieles mehr.