Attività DBA comuni per Amazon RDS for PostgreSQL - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Attività DBA comuni per Amazon RDS for PostgreSQL

Gli amministratori di database (DBAs) eseguono una serie di attività durante l'amministrazione di un'istanza database Amazon RDS for PostgreSQL. Se sei un amministratore di database (DBA) che già conosce PostgreSQL, devi essere a conoscenza di alcune delle principali differenze tra l'esecuzione di PostgreSQL sul tuo hardware e RDS per PostgreSQL. Ad esempio, poiché si tratta di un servizio gestito, Amazon RDS non consente alla shell di accedere alle istanze database. Ciò significa che non puoi accedere direttamente a pg_hba.conf e altri file di configurazione. Per RDS per PostgreSQL, le modifiche che vengono in genere apportate al file di configurazione PostgreSQL di un'istanza on-premise vengono applicate a un gruppo di parametri database personalizzato associato all'istanza database RDS per PostgreSQL. Per ulteriori informazioni, consulta Gruppi di parametri per RDS.

Non è possibile accedere ai file di log come con un'istanza PostgreSQL on-premise. Per ulteriori informazioni sulla registrazione, consulta File di log del database RDS per PostgreSQL.

Come altro esempio, non è possibile accedere all'account PostgreSQL superuser. Su RDS per PostgreSQL, il ruolo rds_superuser è quello più privilegiato e viene concesso a postgres al momento della configurazione. Sia che tu abbia familiarità con l'utilizzo di PostgreSQL on-premise o che tu sia un nuovo utente di RDS per PostgreSQL, ti consigliamo di familiarizzare con il ruolo rds_superuser e approfondire l'utilizzo di ruoli, utenti, gruppi e autorizzazioni. Per ulteriori informazioni, consulta Informazioni su ruoli e autorizzazioni di PostgreSQL.

Di seguito sono riportate alcune attività DBA comuni per RDS for PostgreSQL.

Utilizzo dei meccanismi di registrazione supportati da RDS for PostgreSQL

Esistono diversi parametri, estensioni e altri elementi configurabili che è possibile impostare per registrare le attività che avvengono sull'istanza database PostgreSQL. Questi sono i seguenti:

  • Il parametro log_statement può essere utilizzato per registrare l'attività dell'utente nel database di PostgreSQL. Per ulteriori informazioni sulla registrazione di RDS per PostgreSQL e su come monitorare i registri, consulta File di log del database RDS per PostgreSQL.

  • Il parametro rds.force_admin_logging_level registra le azioni dall'utente interno Amazon RDS (rdsadmin) nei database sull'istanza database. Scrive l'output nel registro degli errori PostgreSQL. I valori consentiti sono disabled, debug5, debug4, debug3, debug2, debug1, info, notice, warning, error, log, fatal e panic. Il valore predefinito è disabled.

  • Il parametro rds.force_autovacuum_logging_level può essere impostato per acquisire varie operazioni di pulizia automatica nel registro degli errori PostgreSQL. Per ulteriori informazioni, consulta Registrazione delle attività di autovacuum e vacuum.

  • L'estensione PostgreSQL Audit (pgAudit) può essere installata e configurata per acquisire attività a livello di sessione o a livello di oggetto. Per ulteriori informazioni, consulta Utilizzo pgAudit per registrare l'attività del database.

  • L’estensione log_fdw consente di accedere al registro del motore del database utilizzando SQL. Per ulteriori informazioni, consulta Utilizzo dell'estensione log_fdw per accedere al registro DB utilizzando SQL.

  • La libreria pg_stat_statements è specificata come predefinita per il parametro shared_preload_libraries in RDS per PostgreSQL versione 10 e successive. È questa libreria che puoi utilizzare per analizzare le query in esecuzione. Assicurati che pg_stat_statements sia impostato nel gruppo parametri del database. Per ulteriori informazioni sul monitoraggio dell'istanza database RDS for PostgreSQL utilizzando le informazioni fornite da questa libreria, consulta Statistiche SQL per RDS PostgreSQL.

  • Il parametro log_hostname acquisisce nel log il nome host di ogni connessione client. Per RDS per PostgreSQL versione 12 e successive, questo parametro è impostato su off per impostazione predefinita. Se lo attivi, assicurati di monitorare i tempi di connessione della sessione. Quando è attivo, il servizio utilizza la richiesta di ricerca inversa del sistema dei nomi di dominio (DNS) per ottenere il nome host del client che sta effettuando la connessione e aggiungerlo al log di PostgreSQL. Ciò ha un impatto notevole sulla connessione della sessione. Ti consigliamo di attivare questo parametro solo a scopo di risoluzione dei problemi.

In termini generali, lo scopo della registrazione è consentire a DBA di monitorare, ottimizzare le prestazioni e risolvere i problemi. Molti dei log vengono caricati automaticamente su Amazon CloudWatch o Performance Insights. Qui vengono ordinati e raggruppati per fornire parametri completi per l’istanza database. Per ulteriori informazioni sul monitoraggio e sui parametri di Amazon RDS, consulta Metriche di monitoraggio in un'istanza Amazon RDS.

Utilizzo di pgBadger per l'analisi del registro con PostgreSQL

È possibile utilizzare un analizzatore di registro come pgBadger per analizzare i registri di PostgreSQL. La documentazione pgBadger afferma che il modello %l (la linea di registro per sessione o processo) dovrebbe essere una parte del prefisso. Tuttavia, se si fornisce l'attuale log_line_prefix RDS come parametro per pgBadger, dovrebbe comunque produrre un report.

Ad esempio, il comando seguente formatta correttamente un file di log Amazon RDS for PostgreSQL datato 04-02-2014 usando pgBadger.

./pgbadger -f stderr -p '%t:%r:%u@%d:[%p]:' postgresql.log.2014-02-04-00

Utilizzo PGSnapper per il monitoraggio di PostgreSQL

Puoi utilizzarlo PGSnapper per fornire assistenza nella raccolta periodica di statistiche e metriche relative alle prestazioni di Amazon RDS for PostgreSQL. Per ulteriori informazioni, consulta Monitorare le prestazioni di Amazon RDS for PostgreSQL utilizzando. PGSnapper