View a markdown version of this page

Référence des fonctions rds_tools - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Référence des fonctions rds_tools

L'rds_toolsextension fournit un ensemble de fonctions utilitaires pour gérer et surveiller votre instance de base de données . À l'aide de ces fonctions, vous pouvez diagnostiquer les problèmes de réplication, d'aspiration et de configuration directement depuis SQL, sans outils de surveillance distincts. Ces fonctions s'ajoutent aux fonctions standard de PostgreSQL. Pour plus d'informations sur les fonctions standard de PostgreSQL, consultez la section Fonctions et opérateurs de la documentation PostgreSQL.

Cette section décrit les rds_tools fonctions disponibles sur . Chaque description de fonction indique la version d'rds_toolsextension dans laquelle la fonction est devenue disponible.

Pour créer l'extension, exécutez la commande suivante.

postgres=> CREATE EXTENSION rds_tools; CREATE EXTENSION

rds_tools.role_password_encryption_type

Renvoie la méthode de chiffrement du mot de passe utilisée pour chaque rôle de base de données. Cette fonction de retour d'ensembles exclut les rôles RDS-protected du système de la sortie. Disponible à partir de la version d'rds_toolsextension 1.0.

Pour un exemple d'utilisation de cette fonction pour vérifier le chiffrement des mots de passe avant de migrer les utilisateurs de la base de données vers SCRAM, voir. Utilisation de SCRAM pour le chiffrement de mot de passe PostgreSQL

Prototype de fonction

rds_tools.role_password_encryption_type()

Arguments

Aucune.

Output

  • rolname— Nom du rôle de base de données.

  • encryption_type— La méthode de cryptage du mot de passe utilisée, telle que md5 ouscram-sha-256.

Exemple d’utilisation

=> SELECT * FROM rds_tools.role_password_encryption_type(); rolname | encryption_type ---------------+----------------- postgres | md5 app_user | md5 readonly_user | scram-sha-256 (3 rows)

rds_tools.postgres_get_av_diag

Récupère des informations de diagnostic sur les processus d'aspiration automatique qui bloquent ou sont en retard, ainsi que des suggestions pour résoudre chaque problème. Exécutez cette fonction de renvoi d'ensembles dans la base de données avec l'identifiant de transaction le plus ancien pour obtenir des résultats précis. Pour plus d'informations, voir Identification et résolution des problèmes liés aux bloqueurs de vide agressifs.

Disponible à partir de la version d'rds_toolsextension 1.9.

Prototype de fonction

rds_tools.postgres_get_av_diag()

Arguments

Aucune.

Output

  • blocker— La catégorie d'activité de base de données qui bloque le vide. La valeur est l’une des suivantes :

    • Instruction active

    • État Idle in transaction (Transaction inactive)

    • Transaction préparée

    • Emplacement de réplication logique

    • Réplica en lecture avec emplacement de réplication physique

    • Réplica en lecture avec réplication de streaming

    • Tables temporaires

  • database— Nom de la base de données dans laquelle se produit l'activité de blocage.

  • blocker_identifier— L'identifiant de l'activité de blocage. La valeur dépend du type de bloqueur :

    • Pour une instruction active ou une session inactive en cours de transaction, l'ID du processus avec son instruction SQL.

    • Pour une transaction préparée, le nom de la transaction préparée.

    • Pour une réplique en lecture, adresse IP de la réplique.

    • Pour un emplacement de réplication, nom du slot de réplication.

  • wait_event— L'événement d'attente de la session de blocage, le cas échéant.

  • autovacuum_lagging_by— Le nombre de transactions pour lesquelles Autovacuum est en retard dans cette catégorie.

  • suggestion— Une suggestion pour résoudre le bloqueur, y compris le nom de la base de données, l'ID du processus et l'action à entreprendre.

  • suggested_action— Un tableau des actions à effectuer pour résoudre le bloqueur.

Exemple d’utilisation

=> SELECT * FROM rds_tools.postgres_get_av_diag() ORDER BY autovacuum_lagging_by DESC; blocker | Active statement database | my_database blocker_identifier | SELECT pg_sleep(20000); wait_event | Timeout:PgSleep autovacuum_lagging_by | 568600871 suggestion | Connect to database "my_database", review carefully, and consider terminating the process using suggested_action. suggested_action | {"SELECT pg_terminate_backend(29621);"}