Database
 sql >> Datenbank >  >> RDS >> Database

Allgemeine Postgres-Aufgaben unter CentOS 7

Dieser Leitfaden führt Sie durch einige allgemeine Aufgaben rund um einen Postgres-Server. In diesem Tutorial behandeln wir die Installation von Postgres, das Erstellen neuer Datenbanken und Benutzer, das Sichern von Datenbanken und mehr! Lassen Sie uns graben!

Hinweis:Für den Rest dieses Tutorials benötigen Sie root Privilegien. Beginnen Sie, indem Sie sich entweder als Root anmelden oder diesen Befehlen sudo voranstellen .

PostgreSQL installieren

Die Installation von Postgres ist auf unserem CentOS VPS-Server dank des YUM-Paketmanagers einfach. Führen Sie den folgenden Befehl aus, um Postgres auf Ihrem System zu installieren:

yum install -y postgres-server

PostreSQL konfigurieren

Nachdem Postgres installiert ist, ist es an der Zeit, den Dienst zu konfigurieren. Zunächst erfordert Postgres, dass Sie eine Datenbank initialisieren, bevor sie verwendet werden kann. Glücklicherweise stellen sie einen Befehl bereit, der uns diesen Schritt erleichtert:

postgres-setup initdb

Wir werden Postgres so einstellen, dass es automatisch startet, wenn Ihr Server hochgefahren wird. Führen Sie den folgenden Befehl aus, um den Dienst beim Booten zu aktivieren:
systemctl enable postgres

Als nächstes starten wir den Dienst. Der folgende Befehl startet Postgres, falls es noch nicht läuft:
systemctl start postgres

Abschließend prüfen wir, ob Postgres nach dem Neustart läuft:
service postgres status

Die Ausgabe sollte aktiv (laufend) anzeigen, was darauf hinweist, dass der Dienst aktiv ist und wir fortfahren können!

Erstellen einer neuen Datenbank und Hinzufügen eines neuen Benutzers

Postgres wird als Benutzer „postgres“ auf Ihrem CentOS-Linux-System ausgeführt, nicht als „root“. Dies ist wichtig zu beachten, da Sie als Root nicht mit Postgres interagieren können.

Wechseln wir zunächst zur Datei „postgres " Benutzer. Dieser Benutzer wurde automatisch in Ihrem System erstellt, als wir Postgres installiert haben.
su - postgres

Als nächstes erstellen wir eine neue Datenbank. Wir nennen es „meineDatenbank ” in unserem Beispiel, aber fühlen Sie sich frei, dies zu benennen, wie Sie möchten.
createdb mydatabase

Jetzt fügen wir einen neuen Benutzer für diese Datenbank hinzu. In diesem Beispiel verwenden wir den Benutzernamen „myusername “, aber Sie können diesen Namen beliebig benennen.
createuser myusername

Erteilen von Berechtigungen für die PostgreSQL-Datenbank

Bisher haben wir Postgres installiert, eine neue Datenbank erstellt und einen neuen Benutzer für den Zugriff auf die Datenbank erstellt. Es bleibt nur noch ein Schritt übrig, nämlich Berechtigungen zu erteilen, damit unser neuer Benutzer auf die Datenbank zugreifen kann. Um diesen Prozess zu starten, müssen wir zuerst die „Postgres-Shell“ eingeben. Geben Sie den folgenden Befehl ein:
psql

Nachdem Sie die Eingabetaste gedrückt haben, sollten Sie feststellen, dass sich Ihre Eingabeaufforderung geändert hat, was darauf hinweist, dass Sie sich jetzt in der Postgres-Shell befinden.
psql (9.2.24)
Type “help” for help.
postgres =#

Von hier aus können wir nun Berechtigungen für unseren neuen Benutzer hinzufügen, um auf die Datenbank zuzugreifen. Geben Sie den folgenden Befehl ein, um ein Passwort für unseren Benutzer festzulegen. Es gibt nur wenige Dinge zu beachten. Zuerst werden die einfachen Anführungszeichen um das Passwort benötigt! Stellen Sie zweitens sicher, dass Sie das Beispiel my_secure_password ersetzen für ein legitimes sicheres Passwort! Stellen Sie schließlich sicher, dass Sie das Semikolon am Ende der Anweisung einfügen. Es ist leicht zu übersehen!
alter username myusername with encrypted password ‘my_secure_password’;
Postgres sollte mit dem folgenden Text antworten und Sie wissen lassen, dass es erfolgreich war.
ALTER ROLE

Nachdem das Passwort erstellt wurde, werden wir Berechtigungen für die Datenbank festlegen. Dadurch kann myusername auf mydatabase zugreifen.
grant all privileges on database mydatabase to myusername;
Postgres antwortet mit folgendem Text, wenn der Befehl erfolgreich war.
GRANT

Lassen Sie uns unsere Arbeit noch einmal überprüfen und sicherstellen, dass die Datenbank in Postgres angezeigt wird. Führen Sie in der Shell \list aus Befehl und beobachten Sie die Ausgabe sorgfältig. Sie sollten „meineDatenbank sehen ” in der Liste der Datenbanken.

Wir sind fertig! Geben Sie den folgenden Befehl ein, um die Postgres-Shell zu verlassen.
\quit

So sichern Sie eine PostgreSQL-Datenbank

Es gibt mehrere Möglichkeiten, eine Postgres-Datenbank zu sichern. Für unser heutiges Beispiel zeigen wir Ihnen, wie Sie die hervorragende „pg_dump “-Befehl, der Ihre gesamte Datenbank als eine einzige Datei ausgibt. Das Erstellen von Backups ist ein Kinderspiel! Führen Sie den folgenden Befehl aus, um unsere Datenbank zu sichern. Beachten Sie, dass wir den Namen „mydatabase.bak verwendet haben ” in unserem Beispiel, aber Sie können Ihre Sicherungsdatei beliebig benennen.
pg_dump mydatabase > mydatabase.bak

Sie können diese Datei jetzt einfach kopieren oder verschieben, wo immer Sie Backups speichern möchten. Als bewährte Vorgehensweise empfehlen wir dringend, Ihre Sicherungen auf einem dedizierten Sicherungsdatenträger getrennt von Ihrem Betriebssystemlaufwerk zu speichern. Auf diese Weise sind Ihre Backups auch im unwahrscheinlichen Fall eines Systemabsturzes sicher und zuverlässig.

So löschen Sie eine PostgreSQL-Datenbank

Das Löschen einer Datenbank ist ein unkomplizierter Vorgang. Es erfordert, dass Sie zuerst auf die Postgres-Shell zugreifen. Eine kurze Erinnerung daran, dass Sie mit dem folgenden Befehl auf die Postgres-Shell zugreifen können:
psql
Von hier aus ist es ein einziger Befehl, um die Datenbank zu löschen. Löschen wir unsere Beispieldatenbank.
drop database mydatabase
Postgres bestätigt den Erfolg mit der folgenden Meldung:
DROP DATABASE
Hinweis:Wenn Sie eine Datenbank angeben, die nicht existiert, antwortet Postgres mit folgendem Fehler:
ERROR: database “my_other_database” does not exist
Sie können überprüfen, ob die Datenbank gelöscht wurde, indem Sie \list verwenden Befehl innerhalb der Postgres-Shell. Beobachten Sie die Ausgabe und Sie sollten feststellen, dass „mydatabase ” wurde aus der Liste der Datenbanken entfernt.

So stellen Sie eine PostgreSQL-Datenbank aus Backups wieder her

Nachdem wir unsere Datenbank namens „mydatabase“ gelöscht haben “, sehen wir uns an, wie diese Datenbank aus der von uns erstellten Sicherung wiederhergestellt wird. Zuerst müssen wir eine leere Vorlage verwenden, um die wiederhergestellte Datenbank aufzunehmen. Stellen Sie sicher, dass Sie den folgenden Befehl als Ihr Postgres-Benutzer und über die BASH-Shell (nicht die Postgres-Shell!) ausführen.
createdb -T template0 mydatabase

Jetzt, da wir unseren Vorlagenplatzhalter haben, können wir Daten importieren.
psql mydatabase < /path/to/mydatabase.bak
Die Datenbank wurde nun wiederhergestellt. Wenn Sie \list ausführen erneut von der Postgres-Shell, sehen Sie, dass „mydatabase“ wieder in unserer Liste der Datenbanken erscheint!

Herzlichen Glückwunsch, dass Sie es bis zum Ende dieser Folge geschafft haben. Wir haben in diesem Tutorial viel Boden behandelt! Wir haben bei diesem Thema nur an der Oberfläche gekratzt, und Sie können bereits erkennen, warum Datenbankadministratoren in vielen Unternehmen dedizierte Positionen bekleiden! Glücklicherweise ist Liquid Web hier, um Ihnen bei all Ihren Datenbankanforderungen zu helfen. Unser Team von Profis kann Ihnen bei der Beratung und Verwaltung Ihrer Datenbanken behilflich sein. Schreiben Sie uns, wenn Sie Fragen haben, und danke fürs Lesen!