Dba query hidden parameters

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type Script SQL*Plus de diagnostic
Domaine Administration (configuration de l'instance)
Voir aussi Dba options

Dba query hidden parameters liste les paramètres d'instance "cachés" (préfixés par un underscore, non documentés officiellement), avec leur valeur courante et leur description interne. Nécessite une connexion en tant que SYS (les vues fixes internes x$ksppi/x$ksppcv ne sont accessibles qu'à ce compte, ou via un rôle en disposant explicitement).

Ces paramètres cachés ne sont pas destinés à un usage courant : ils existent pour des besoins de diagnostic avancé, de contournement temporaire de bug, ou de tuning très spécifique généralement recommandé par le support Oracle. Les modifier sans justification documentée (SR support, note MOS...) est risqué et peut rendre la configuration non supportée.

Script

SET TERMOUT OFF
COLUMN current_instance NEW_VALUE current_instance NOPRINT
SELECT RPAD(instance_name, 17) current_instance FROM v$instance;
SET TERMOUT ON

PROMPT
PROMPT +------------------------------------------------------------------------+
PROMPT | Report   : Hidden Parameters                                           |
PROMPT | Instance : &current_instance                                          |
PROMPT +------------------------------------------------------------------------+

SET ECHO      OFF
SET FEEDBACK  6
SET HEADING   ON
SET LINESIZE  256
SET PAGESIZE  50000
SET VERIFY    OFF

COLUMN ksppinm  FORMAT a55 HEAD 'Parameter Name'
COLUMN ksppstvl FORMAT a40 HEAD 'Value'
COLUMN ksppdesc FORMAT a60 HEAD 'Description' TRUNC

SELECT
    ksppinm
  , ksppstvl
  , ksppdesc
FROM x$ksppi x, x$ksppcv y
WHERE      x.indx = y.indx
       AND TRANSLATE(ksppinm, '_', '#') LIKE '#%'
ORDER BY ksppinm
/

Le titre du rapport (PROMPT) affichait par erreur "Invalid Objects" dans le script d'origine — copié-collé depuis Dba invalid objects et jamais corrigé ; renommé ici en "Hidden Parameters".

Colonnes / sortie

  • Parameter Name — nom du paramètre caché (commence par _).
  • Value — valeur actuellement en vigueur sur l'instance.
  • Description — description interne du paramètre (tronquée à l'affichage si trop longue).

Le filtre TRANSLATE(ksppinm, '_', '#') LIKE '#%' est une façon un peu détournée de sélectionner les noms commençant par un underscore : il remplace tous les _ par # puis teste si le résultat commence par #, pour éviter que le _ du LIKE classique (qui est un joker "un caractère quelconque") ne fausse le filtre — un simple WHERE ksppinm LIKE '\_%' ESCAPE aurait le même effet de façon plus directe.

Voir aussi

  • Dba options — autre diagnostic de configuration, côté options installées plutôt que paramètres cachés