Tous les produits
Search
Centre de documentation

ApsaraDB RDS:Debug stored procedures (pldebugger)

Dernière mise à jour :Oct 10, 2026

Cette rubrique explique comment utiliser l’extension pldebugger pour déboguer les procédures stockées d’une instance ApsaraDB RDS for PostgreSQL.

Informations générales

ApsaraDB RDS for PostgreSQL prend en charge divers langages de procédures stockées, tels que PL/pgSQL, PL/Python, PL/Perl et PL/Tcl. Vous pouvez utiliser ces langages pour créer des fonctions ou des procédures stockées.

Prérequis

  • Votre instance RDS exécute l’une des versions de moteur de base de données suivantes :

    Version majeure du moteur

    Version mineure du moteur

    PostgreSQL 14, 15, 16 ou 17

    20250630 ou ultérieure

    PostgreSQL 10, 11, 12 ou 13

    20230830 ou ultérieure

    Important

    Ce plug-in était pris en charge dans les versions mineures du moteur antérieures à 20230830. Afin de normaliser la gestion des plug-ins et de renforcer la sécurité, RDS optimise les plug-ins présentant des risques de sécurité dans les nouvelles versions du moteur. Par conséquent, la création de ces plug-ins est restreinte sur certaines versions mineures du moteur. Pour plus d’informations, consultez la section Restrictions de création de plug-ins.

    • Si votre instance exécute une version mineure du moteur antérieure à 20230830 et que vous utilisez déjà ce plug-in, vos charges de travail ne sont pas affectées.

    • Si vous créez ce plug-in pour la première fois ou si vous le recréez, mettez à niveau la version mineure du moteur vers la dernière version.

  • Vous disposez d’un compte privilégié pour votre instance ApsaraDB RDS for PostgreSQL. Pour plus d’informations, consultez la page Créer un compte.

  • La version de pgAdmin4 sur votre client de base de données est la 4.19 ou une version ultérieure. Vous pouvez télécharger pgAdmin4 depuis le site pgAdmin4.

Installer et désinstaller l’extension

  1. Définissez les paramètres de l’instance et ajoutez plugin_debugger à la running parameter value du paramètre shared_preload_libraries. Par exemple, modifiez la running parameter value pour qu’elle soit 'pg_stat_statements,auto_explain,plugin_debugger'.

  2. Utilisez un compte privilégié pour vous connecter à la base de données cible et exécutez les instructions SQL suivantes afin de gérer l’extension.

    • Créez l’extension.

      CREATE EXTENSION pldbgapi;
    • Supprimez l’extension.

      DROP EXTENSION pldbgapi;

Exemples

  1. Utilisez un client pgAdmin pour vous connecter à votre instance ApsaraDB RDS for PostgreSQL. Pour plus d’informations, consultez la page Se connecter à une instance PostgreSQL.

  2. Créez une table de test et une procédure stockée.

    Exemple d’instructions SQL :

    CREATE TABLE test(
        id int,
        name VARCHAR(50));
    CREATE OR REPLACE FUNCTION public.testcount()
    RETURNS integer AS $$
    DECLARE
        postgres text;
        counts integer;
    BEGIN
    INSERT INTO test VALUES(1, 'a');
    postgres:='SELECT COUNT(*) FROM test';
    EXECUTE postgres INTO counts;
    IF counts > 100 THEN
        RETURN counts;
    ELSE
        RETURN 0;
    END IF;
    END;
    $$ language plpgsql;
  3. Dans le volet Browser situé à gauche, développez Functions, cliquez avec le bouton droit sur la fonction testcount(), puis choisissez Debugging > Debug pour entrer en mode de débogage.

  4. Dans le panneau de débogage de fonction situé à droite de l’interface pgAdmin, vous pouvez effectuer un débogage pas à pas de la fonction cible. La barre d’outils du débogueur en haut propose des boutons pour contrôler l’exécution, tels que Step Into, Step Over, Continue et Stop. Utilisez les boutons Toggle breakpoint et Clear all breakpoints pour gérer les points d’arrêt. La ligne d’exécution actuelle est mise en surbrillance dans l’éditeur de code. En bas, les onglets Parameters, Local variables, Messages, Results et Stack vous permettent d’inspecter les valeurs des variables, les messages et la pile d’appels de la fonction.