Häufige DBA-Aufgaben für Amazon RDS for PostgreSQL
Bei der Verwaltung einer DB-Instance von Amazon RDS for PostgreSQL führen Datenbankadministratoren (DBAs) eine Vielzahl von Aufgaben aus. Wenn Sie als DBA bereits mit PostgreSQL vertraut sind, müssen Sie sich einige wichtige Unterschiede zwischen dem Ausführen von PostgreSQL auf Ihrer Hardware und RDS for PostgreSQL beachten. Da es sich beispielsweise um einen verwalteten Service handelt, lässt Amazon RDS keinen Shell-Zugriff auf Ihre DB-Instances zu. Das bedeutet, dass Sie keinen direkten Zugriff auf pg_hba.conf
und andere Konfigurationsdateien haben. Bei RDS für PostgreSQL werden Änderungen, die normalerweise an der PostgreSQL-Konfigurationsdatei einer lokalen Instance vorgenommen werden, an einer benutzerdefinierten DB-Parametergruppe vorgenommen, die der DB-Instance von RDS für PostgreSQL zugeordnet ist. Weitere Informationen finden Sie unter Arbeiten mit Parametergruppen.
Darüber hinaus können Sie nicht auf die gleiche Weise auf Protokolldateien zugreifen wie mit einer lokalen PostgreSQL-Instance. Weitere Informationen zur Protokollierung finden Sie unter Datenbank-Protokolldateien von RDS für PostgreSQL.
Sie haben beispielsweise auch keinen Zugriff auf das superuser
-Konto von PostgreSQL. Bei RDS for PostgreSQL ist die rds_superuser
-Rolle diejenige mit den meisten Berechtigungen und wird postgres
zum Zeitpunkt der Einrichtung gewährt. Unabhängig davon, ob Sie mit der On-Premises-Verwendung von PostgreSQL vertraut sind oder Neueinsteiger bei RDS for PostgreSQL sind, empfehlen wir Ihnen, sich mit der rds_superuser
-Rolle und dem Umgang mit Rollen, Benutzern, Gruppen und Berechtigungen vertraut zu machen. Weitere Informationen finden Sie unter Grundlegendes zu PostgreSQL-Rollen und -Berechtigungen.
Im Folgenden sind einige häufige DBA-Aufgaben für RDS for PostgreSQL aufgeführt.
Themen
- In RDS für PostgreSQL unterstützte Sortierungen
- Grundlegendes zu PostgreSQL-Rollen und -Berechtigungen
- Arbeiten mit der PostgreSQL-Selbstbereinigung in Amazon RDS for PostgreSQL
- Arbeiten mit Protokollierungsmechanismen, die von RDS for PostgreSQL unterstützt werden
- Verwalten temporärer Dateien mit PostgreSQL
- Verwenden von pgBadger für die Protokollanalyse mit PostgreSQL
- Verwenden von PGSnapper zur Überwachung von PostgreSQL
- Arbeiten mit Parametern auf der DB-Instance von RDS for PostgreSQL
Arbeiten mit Protokollierungsmechanismen, die von RDS for PostgreSQL unterstützt werden
Es gibt mehrere Parameter, Erweiterungen und andere konfigurierbare Elemente, die Sie festlegen können, um Aktivitäten zu protokollieren, die auf Ihrer PostgreSQL-DB-Instance auftreten. Diese umfassen u. a. folgende:
Der Parameter
log_statement
kann verwendet werden, um in Ihrer PostgreSQL-Datenbank Benutzeraktivitäten zu protokollieren. Weitere Informationen über RDS for PostgreSQL-Protokollierung und zur Überwachung der Protokolle finden Sie unter Datenbank-Protokolldateien von RDS für PostgreSQL.Der Parameter
rds.force_admin_logging_level
protokolliert Aktionen durch den internen Amazon-RDS-Benutzer (rdsadmin) in den Datenbanken in der DB-Instance. Die Ausgabe wird in das PostgreSQL-Fehlerprotokoll geschrieben. Zulässige Werte sinddisabled
,debug5
,debug4
,debug3
,debug2
,debug1
,info
,notice
,warning
,error
, Protokoll,fatal
undpanic
. Der Standardwert istdisabled
.Der
rds.force_autovacuum_logging_level
-Parameter kann festgelegt werden, um verschiedene Selbstbereinigungsoperationen im PostgreSQL-Fehlerprotokoll zu erfassen. Weitere Informationen finden Sie unter Protokollieren von Selbstbereinigung- und Bereinigungsaktivitäten.Die PostgreSQL Audit (pgAudit)-Erweiterung kann installiert und konfiguriert werden, um Aktivitäten auf Sitzungsebene oder auf Objektebene zu erfassen. Weitere Informationen finden Sie unter Verwenden von pgAudit zur Protokollierung der Datenbankaktivität.
Die
log_fdw
-Erweiterung ermöglicht es Ihnen, über SQL auf das Datenbank-Engine-Protokoll zuzugreifen. Weitere Informationen finden Sie unter Verwenden der Erweiterung log_fdw für den Zugriff auf das DB-Protokoll mithilfe von SQL.Die
pg_stat_statements
-Bibliothek ist als Standardwert für denshared_preload_libraries
-Parameter in RDS for PostgreSQL Version 10 und höher angegeben. Mit dieser Bibliothek können Sie laufende Abfragen analysieren. Stellen Sie sicher, dasspg_stat_statements
in Ihrer DB-Parametergruppe festgelegt ist. Weitere Informationen zur Überwachung Ihrer DB-Instance von RDS for PostgreSQL unter Verwendung der Informationen, die diese Bibliothek bereitstellt, finden Sie unter SQL-Statistiken für RDS PostgreSQL.Der
log_hostname
-Parameter erfasst den Hostnamen jeder Client-Verbindung im Protokoll. Für RDS für PostgreSQL Version 12 und höhere Versionen ist dieser Parameter standardmäßig aufoff
festgelegt. Wenn Sie ihn aktivieren, achten Sie darauf, die Verbindungszeiten der Sitzung zu überwachen. Wenn diese Option aktiviert ist, verwendet der Dienst die Reverse-Lookup-Anfrage des Domain Name Systems (DNS), um den Hostnamen des Clients, der die Verbindung herstellt, abzurufen und dem PostgreSQL-Protokoll hinzuzufügen. Dies hat spürbare Auswirkungen während der Sitzungsverbindung. Wir empfehlen, diesen Parameter nur für Fehlerbehebungszwecke zu aktivieren.
Im Allgemeinen ist der Zweck der Protokollierung, dass der DBA die Leistung überwachen, optimieren und Fehler beheben kann. Viele der Protokolle werden automatisch auf Amazon CloudWatch oder Performance Insights hochgeladen. Hier werden sie sortiert und gruppiert, um vollständige Metriken für die DB-Instance bereitzustellen. Weitere Informationen zur Amazon-RDS-Überwachung und -Metriken finden Sie unter Überwachen von Metriken in einer Amazon-RDS-Instance.
Verwenden von pgBadger für die Protokollanalyse mit PostgreSQL
Sie können einen Protokollanalysierer wie pgBadgerlog_line_prefix
als Parameter für pgBadger angeben, wird dennoch ein Bericht erstellt.
Beispielsweise formatiert der folgende Befehl eine Amazon-RDS-for-PostgreSQL-Protokolldatei mit dem Datum 2014-02-04 korrekt unter Verwendung von pgBadger.
./pgbadger -f stderr -p '%t:%r:%u@%d:[%p]:' postgresql.log.2014-02-04-00
Verwenden von PGSnapper zur Überwachung von PostgreSQL
Sie können PGSnapper verwenden, um Sie bei der regelmäßigen Erfassung leistungsbezogener Statistiken und Metriken von Amazon RDS für PostgreSQL zu unterstützen. Weitere Informationen finden Sie unter Überwachen der Leistung von Amazon RDS für PostgreSQL mit PgSnapper