Aller au contenu

Service SQL IBM i (AS/400) · Procédure

QSYS2.DUMP_PLAN_CACHE

Capturer le cache de plans SQL

Capture le cache de plans SQL dans une table, en entier ou filtré par plan, texte SQL ou hachage QRO, pour analyser les requêtes exécutées par le système.

À quoi ça sert

La procédure QSYS2.DUMP_PLAN_CACHE écrit une copie du cache de plans (snapshot) dans la table FILENAME de la bibliothèque FILESCHEMA. La table obtenue contient les données des plans et des requêtes qu'on peut ensuite analyser par SQL, ou ouvrir avec les outils de performance SQL.

Paramètres facultatifs : PLAN_IDENTIFIER, SQL_STATEMENT_TEXT_FILTER (filtre sur le texte de l'instruction), INCLUDE_SYSTEM_QUERIES (NO par défaut), IASP_NAME (*CURRENT par défaut) et QRO_HASH.

La procédure crée une table de capture, ne modifie pas le cache lui-même et n'a pas de mode aperçu (PREVIEW).

Résultat réel sur un IBM i 7.5

Procédure non exécutée sur notre IBM i de test : elle agit sur la configuration du système ou sur d'autres travaux.

L'exemple d'IBM

Capturer un instantané complet du cache de plans.

-- Description: Capture a complete plan cache snapshot 
   CALL QSYS2.DUMP_PLAN_CACHE('SNAPSHOTS','FULLSNAP');

Bon à savoir

Un instantané complet peut être volumineux sur un système chargé. Si vous cherchez les requêtes les plus coûteuses, DUMP_PLAN_CACHE_TOPN est plus léger.

Paramètres

ParamètreTypePar défautSignification
FILESCHEMA VARCHAR(10) obligatoire Bibliothèque du fichier
FILENAME VARCHAR(10) obligatoire Nom du fichier
PLAN_IDENTIFIER DECIMAL(20, 0) NULL Identifiant du plan
SQL_STATEMENT_TEXT_FILTER VARCHAR(1000) NULL Filtre sur le texte de l'instruction SQL
INCLUDE_SYSTEM_QUERIES VARCHAR(3) 'NO' Inclure les requêtes système
IASP_NAME VARCHAR(10) '*CURRENT' Nom de l'ASP indépendant
QRO_HASH VARCHAR(8) NULL Hachage de l'optimiseur de requêtes (QRO)