

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
<a name="PostgreSQL_rds_tools-functions-reference"></a>

L'`rds_tools`extension fournit un ensemble de fonctions utilitaires pour gérer et surveiller votre instance de base de données RDS for PostgreSQL PostgreSQL. À 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](https://www.postgresql.org/docs/current/functions.html) opérateurs de la documentation PostgreSQL.

 Chaque description de fonction indique la version d'`rds_tools`extension dans laquelle la fonction est devenue disponible.

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

```
postgres=> CREATE EXTENSION rds_tools;
CREATE EXTENSION
```

**Topics**
+ [rds\_tools.role\_password\_encryption\_type](#rds_tools.role_password_encryption_type)
+ [rds\_tools.blue\_green\_get\_status](#rds_tools.blue_green_get_status)
+ [rds\_tools.postgres\_get\_av\_diag](#rds_tools.postgres_get_av_diag)
+ [rds\_tools.rds\_version](#rds_tools.rds_version)
+ [rds\_tools.logical\_seed\_lsn](#rds_tools.logical_seed_lsn)
+ [rds\_tools.db\_instance\_identifier](#rds_tools.db_instance_identifier)
+ [rds\_tools.dbi\_resource\_id](#rds_tools.dbi_resource_id)
+ [rds\_tools.multi\_az\_db\_cluster\_source\_dbi\_resource\_id](#rds_tools.multi_az_db_cluster_source_dbi_resource_id)
+ [rds\_tools.show\_topologie](#rds_tools.show_topology)
+ [rds\_tools.pg\_ls\_multixactdir](#rds_tools.pg_ls_multixactdir)

## rds\_tools.role\_password\_encryption\_type
<a name="rds_tools.role_password_encryption_type"></a>

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_tools`extension 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](PostgreSQL_Password_Encryption_configuration.md)

### Prototype de fonction
<a name="rds_tools.role_password_encryption_type-prototype"></a>

```
rds_tools.role_password_encryption_type()
```

### Arguments
<a name="rds_tools.role_password_encryption_type-arguments"></a>

Aucune.

### Output
<a name="rds_tools.role_password_encryption_type-output"></a>
+ `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` ou`scram-sha-256`.

### Exemple d’utilisation
<a name="rds_tools.role_password_encryption_type-example"></a>

```
=> 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.blue\_green\_get\_status
<a name="rds_tools.blue_green_get_status"></a>

Vérifie les commandes restreintes exécutées pendant les opérations blue/green de déploiement. Lors blue/green des déploiements utilisant la réplication logique, vous ne pouvez pas répliquer les commandes du langage de définition des données (DDL) ou les opérations sur de grands objets (LO) entre les environnements bleu et vert. Si une commande restreinte est détectée, redémarrez le blue/green déploiement, car les données ne peuvent pas être correctement répliquées dans l'environnement écologique. Disponible à partir de la version d'`rds_tools`extension 1.3.

### Prototype de fonction
<a name="rds_tools.blue_green_get_status-prototype"></a>

```
rds_tools.blue_green_get_status(command_type)
```

### Arguments
<a name="rds_tools.blue_green_get_status-arguments"></a>
+ `command_type`— Type de commande restreinte à vérifier. Les valeurs valides sont `'DDL'` (commandes du langage de définition des données) et `'LO'` (opérations sur des objets volumineux).

### Output
<a name="rds_tools.blue_green_get_status-output"></a>

Une valeur `boolean`. Renvoie `true` si une commande restreinte du type spécifié a été exécutée pendant le déploiement ou `false` si aucune commande de ce type n'a été détectée.

### Exemple d’utilisation
<a name="rds_tools.blue_green_get_status-example"></a>

```
=> SELECT rds_tools.blue_green_get_status('DDL');
 blue_green_get_status
-----------------------
 f
(1 row)
```

## rds\_tools.postgres\_get\_av\_diag
<a name="rds_tools.postgres_get_av_diag"></a>

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](Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.md).

Disponible à partir de la version d'`rds_tools`extension 1.9.

### Prototype de fonction
<a name="rds_tools.postgres_get_av_diag-prototype"></a>

```
rds_tools.postgres_get_av_diag()
```

### Arguments
<a name="rds_tools.postgres_get_av_diag-arguments"></a>

Aucune.

### Output
<a name="rds_tools.postgres_get_av_diag-output"></a>
+ `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
<a name="rds_tools.postgres_get_av_diag-example"></a>

```
=> 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);"}
```

## rds\_tools.rds\_version
<a name="rds_tools.rds_version"></a>

Affiche la version du moteur RDS pour PostgreSQL pour votre instance de base de données. Cette fonction lit les informations de version à partir des fichiers de configuration de l'instance. Disponible à partir de la version d'`rds_tools`extension 1.1.

### Prototype de fonction
<a name="rds_tools.rds_version-prototype"></a>

```
rds_tools.rds_version()
```

### Arguments
<a name="rds_tools.rds_version-arguments"></a>

Aucune.

### Output
<a name="rds_tools.rds_version-output"></a>

Chaîne de caractères contenant la version du moteur.

### Exemple d’utilisation
<a name="rds_tools.rds_version-example"></a>

```
=> SELECT rds_tools.rds_version();
 rds_version
-------------
 18.1.R1
(1 row)
```

## rds\_tools.logical\_seed\_lsn
<a name="rds_tools.logical_seed_lsn"></a>

Renvoie le numéro de séquence du journal de départ logique (LSN) qui représente le point où la réplication logique diverge de l'instance source. Utilisez cette fonction pour gérer les configurations de réplication logiques et comprendre les points de cohérence de la réplication. Disponible à partir de la version d'`rds_tools`extension 1.2.

### Prototype de fonction
<a name="rds_tools.logical_seed_lsn-prototype"></a>

```
rds_tools.logical_seed_lsn()
```

### Arguments
<a name="rds_tools.logical_seed_lsn-arguments"></a>

Aucune.

### Output
<a name="rds_tools.logical_seed_lsn-output"></a>

Une valeur `pg_lsn`.

### Exemple d’utilisation
<a name="rds_tools.logical_seed_lsn-example"></a>

```
=> SELECT rds_tools.logical_seed_lsn();
 logical_seed_lsn
------------------
 0/1677B68
(1 row)
```

## rds\_tools.db\_instance\_identifier
<a name="rds_tools.db_instance_identifier"></a>

Affiche l'identifiant de l'instance de base de données. Vous spécifiez cet identifiant lorsque vous créez l'instance de base de données, et les services AWS l'utilisent partout pour identifier votre base de données. Disponible à partir de la version d'`rds_tools`extension 1.2.

### Prototype de fonction
<a name="rds_tools.db_instance_identifier-prototype"></a>

```
rds_tools.db_instance_identifier()
```

### Arguments
<a name="rds_tools.db_instance_identifier-arguments"></a>

Aucune.

### Output
<a name="rds_tools.db_instance_identifier-output"></a>

Chaîne de caractères contenant l'identifiant de l'instance de base de données.

### Exemple d’utilisation
<a name="rds_tools.db_instance_identifier-example"></a>

```
=> SELECT rds_tools.db_instance_identifier();
 db_instance_identifier
------------------------
 my-postgres-instance
(1 row)
```

## rds\_tools.dbi\_resource\_id
<a name="rds_tools.dbi_resource_id"></a>

Affiche l'ID de ressource d'instance de base de données (ID de ressource DBI) de votre instance de base de données. L'ID de ressource DBI est un identifiant unique et immuable généré par AWS pour l'instance de base de données. Il reste constant pendant toute la durée de vie de l'instance, même si vous renommez l'instance. Utilisez cette valeur pour corréler l'activité de la base de données avec CloudTrail les journaux AWS ou d'autres services de surveillance AWS. Cette valeur correspond au `DbiResourceId` champ renvoyé par la commande d'API [DBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DBInstance.html) RDS. Disponible à partir de la version d'`rds_tools`extension 1.4.

### Prototype de fonction
<a name="rds_tools.dbi_resource_id-prototype"></a>

```
rds_tools.dbi_resource_id()
```

### Arguments
<a name="rds_tools.dbi_resource_id-arguments"></a>

Aucune.

### Output
<a name="rds_tools.dbi_resource_id-output"></a>

Chaîne de caractères contenant l'ID de ressource DBI.

### Exemple d’utilisation
<a name="rds_tools.dbi_resource_id-example"></a>

```
=> SELECT rds_tools.dbi_resource_id();
          dbi_resource_id
-----------------------------------
 db-ABC123DEF456GHI789JKL012MNO345P
(1 row)
```

## rds\_tools.multi\_az\_db\_cluster\_source\_dbi\_resource\_id
<a name="rds_tools.multi_az_db_cluster_source_dbi_resource_id"></a>

Affiche l'ID de ressource DBI de l'instance source pour un déploiement de Multi-AZ cluster de base de données. Utilisez cette fonction pour comprendre la relation entre les instances d'une Multi-AZ configuration et pour résoudre les problèmes liés aux scénarios de réplication ou de basculement. Disponible à partir de la version d'`rds_tools`extension 1.4.

### Prototype de fonction
<a name="rds_tools.multi_az_db_cluster_source_dbi_resource_id-prototype"></a>

```
rds_tools.multi_az_db_cluster_source_dbi_resource_id()
```

### Arguments
<a name="rds_tools.multi_az_db_cluster_source_dbi_resource_id-arguments"></a>

Aucune.

### Output
<a name="rds_tools.multi_az_db_cluster_source_dbi_resource_id-output"></a>

Chaîne de caractères contenant l'ID de ressource DBI source. Renvoie NULL si l'instance ne fait pas partie d'un Multi-AZ cluster de base de données, si le fichier de configuration n'existe pas ou si le `dbi_resource_id` champ n'existe pas dans la configuration.

### Exemple d’utilisation
<a name="rds_tools.multi_az_db_cluster_source_dbi_resource_id-example"></a>

```
=> SELECT rds_tools.multi_az_db_cluster_source_dbi_resource_id();
 multi_az_db_cluster_source_dbi_resource_id
--------------------------------------------
 db-XYZ789ABC123DEF456GHI012JKL345MNO678P
(1 row)
```

## rds\_tools.show\_topologie
<a name="rds_tools.show_topology"></a>

Affiche les métadonnées topologiques pour les Multi-AZ clusters RDS, ce qui permet des commutations rapides en fournissant des informations de connexion pour toutes les instances du cluster. Les bibliothèques clientes telles que le pilote AWS Advanced JDBC Wrapper utilisent cette fonction de retour d'ensembles pour se connecter directement à toutes les instances d'un cluster RDS. Multi-AZ Pour identifier l'ID de ressource de l'instance du rédacteur, utilisez cette fonction conjointement avec la `rds_tools.multi_az_db_cluster_source_dbi_resource_id` fonction. Disponible à partir de la version d'`rds_tools`extension 1.4.

### Prototype de fonction
<a name="rds_tools.show_topology-prototype"></a>

```
rds_tools.show_topology([client_identifier])
```

### Arguments
<a name="rds_tools.show_topology-arguments"></a>
+ `client_identifier`(facultatif) — Identifiant de la bibliothèque cliente ou du proxy qui interroge la topologie. Ce paramètre est facultatif mais recommandé, car il permet à Amazon RDS de suivre les clients qui interrogent activement la topologie et fournit une télémétrie pour prendre en charge d'autres clients.

### Output
<a name="rds_tools.show_topology-output"></a>
+ `id`— L'ID de ressource DBI de chaque instance du cluster RDS. Multi-AZ
+ `endpoint`— Le point de terminaison de chaque nœud du cluster.
+ `port`— Le numéro de port de chaque instance du Multi-AZ cluster RDS.
+ `role`— Le rôle du nœud dans le cluster, tel que rédacteur ou lecteur.
+ `status`— État du nœud.
+ `version`— Version de l'enregistrement topologique.

### Exemple d’utilisation
<a name="rds_tools.show_topology-example"></a>

```
=> SELECT id, endpoint, port, role FROM rds_tools.show_topology('my-jdbc-app');
       id        |                         endpoint                          | port | role
-----------------+-----------------------------------------------------------+------+--------
 db-IDENTIFIER-1 | somedb-instance-1.aaaaaaaaaaaa.us-west-2.rds.amazonaws.com | 5432 | writer
 db-IDENTIFIER-2 | somedb-instance-2.aaaaaaaaaaaa.us-west-2.rds.amazonaws.com | 5432 | reader
 db-IDENTIFIER-3 | somedb-instance-3.aaaaaaaaaaaa.us-west-2.rds.amazonaws.com | 5432 | reader
(3 rows)
```

## rds\_tools.pg\_ls\_multixactdir
<a name="rds_tools.pg_ls_multixactdir"></a>

Répertorie le contenu du `pg_multixact` répertoire qui stocke les données multitransactions dans PostgreSQL. Utilisez cette fonction de retour d'ensembles pour surveiller l'utilisation du multixact, résoudre les problèmes liés au multixact et comprendre les modèles de stockage des bases de données. Disponible à partir de la version d'`rds_tools`extension 1.7.

### Prototype de fonction
<a name="rds_tools.pg_ls_multixactdir-prototype"></a>

```
rds_tools.pg_ls_multixactdir()
```

### Arguments
<a name="rds_tools.pg_ls_multixactdir-arguments"></a>

Aucune.

### Output
<a name="rds_tools.pg_ls_multixactdir-output"></a>
+ `name`— Le nom du fichier ou du répertoire.
+ `size`— Taille en octets.
+ `modification`— L'horodatage de la dernière modification.

### Exemple d’utilisation
<a name="rds_tools.pg_ls_multixactdir-example"></a>

```
=> SELECT * FROM rds_tools.pg_ls_multixactdir();
           name            | size |      modification
---------------------------+------+------------------------
 pg_multixact/members/     | 4096 | 2026-10-01 19:17:29+00
 pg_multixact/members/0000 | 8192 | 2025-08-22 21:53:46+00
 pg_multixact/offsets/     | 4096 | 2026-10-01 19:17:29+00
 pg_multixact/offsets/0000 | 8192 | 2026-10-01 19:22:38+00
(4 rows)
```