Exécution de la fonction de trace SQL sur Autonomous Database
Utilisez la fonction de trace SQL pour identifier la source d'une charge globale de base de données excessive, telle qu'une instruction SQL à forte charge dans votre application.
- Configuration de la fonction de trace SQL sur Autonomous Database
Affiche les étapes de configuration de la fonction de trace SQL sur Autonomous Database. - Activation de la fonction de trace SQL sur Autonomous Database
Affiche les étapes permettant d'activer la fonction de trace SQL pour la session de base de données. - Désactivation de la fonction de trace SQL sur Autonomous Database
Affiche les étapes permettant de désactiver la fonction de trace SQL sur Autonomous Database. - Affichage du fichier trace enregistré dans la banque d'objets cloud sur Autonomous Database
Description du nom du fichier de sortie pour les fichiers trace SQL et affiche les commandes permettant d'utiliserTKPROF
pour organiser et visualiser les données des fichiers trace. - Affichage des données de trace dans la vue SESSION_CLOUD_TRACE sur Autonomous Database
Lorsque vous activez la fonction de trace SQL, les mêmes informations de trace enregistrées dans le fichier trace sur la banque d'objets cloud sont disponibles dans la vueSESSION_CLOUD_TRACE
de la session dans laquelle la fonction de trace a été activée.
Rubrique parent : Surveiller et gérer les performances
Configuration de la fonction de trace SQL sur Autonomous Database
Affiche les étapes de configuration de la fonction de trace SQL sur Autonomous Database.
Si vous activez la fonction de trace SQL, les performances de l'application pour la session peuvent être dégradées lorsque la collecte de trace est activée. Cet impact négatif sur les performances est attendu en raison de la surcharge liée à la collecte et à l'enregistrement des données de trace.
Pour configurer la base de données pour la fonction de trace SQL, procédez comme suit :
Rubrique parent : Exécution de la fonction de trace SQL sur Autonomous Database
Activation de la fonction de trace SQL sur Autonomous Database
Affiche les étapes permettant d'activer la fonction de trace SQL pour la session de base de données.
Si vous activez la fonction de trace SQL, les performances de l'application pour la session peuvent être dégradées lorsque la collecte de trace est activée. Cet impact négatif sur les performances est attendu en raison de la surcharge liée à la collecte et à l'enregistrement des données de trace.
Avant d'activer la fonction de trace SQL, vous devez configurer la base de données pour enregistrer les fichiers SQL Trace. Pour plus d'informations, reportez-vous à Configuration de la trace SQL sur Autonomous Database.
Pour activer la fonction de trace SQL, procédez comme suit :
Rubrique parent : Exécution de la fonction de trace SQL sur Autonomous Database
Désactivation de la fonction de trace SQL sur Autonomous Database
Affiche les étapes permettant de désactiver la fonction de trace SQL sur Autonomous Database.
Pour désactiver la fonction de trace SQL, procédez comme suit :
Lorsque vous désactivez la fonction de trace SQL, les données de trace collectées pendant l'exécution de la session avec la fonction de trace activée sont copiées dans une table et envoyées vers un fichier trace sur la banque d'objets cloud. Vous disposez de deux options pour afficher les données de trace :
-
Affichez et analysez les données SQL Trace dans le fichier trace enregistré dans la banque d'objets cloud. Pour plus d'informations, reportez-vous à Affichage du fichier trace enregistré dans la banque d'objets cloud sur Autonomous Database.
-
Affichez et analysez les données SQL Trace enregistrées dans la vue
SESSION_CLOUD_TRACE
. Pour plus d'informations, reportez-vous à Visualisation des données de trace dans la vue SESSION_CLOUD_TRACE sur Autonomous Database.
Rubrique parent : Exécution de la fonction de trace SQL sur Autonomous Database
Visualisation du fichier trace enregistré dans la banque d'objets cloud sur Autonomous Database
Décrit le nom des fichiers de sortie pour les fichiers trace SQL et affiche les commandes permettant d'utiliser TKPROF
pour organiser et afficher les données des fichiers trace.
Les données du fichier trace SQL permettent d'analyser les performances des applications sur Autonomous Database. Lorsque vous désactivez la trace SQL dans votre session de base de données, les données sont écrites dans le bucket de banque d'objets cloud configuré avec DEFAULT_LOGGING_BUCKET
.
L'utilitaire SQL Trace écrit les données de trace collectées dans la session dans la banque d'objets cloud au format suivant :
default_logging_bucket/
sqltrace
/
clientID
/moduleName
/sqltrace_
numID1
_numID2
.trc
Les composants du nom de fichier sont les suivants :
-
default_logging_bucket : valeur de la propriété de base de données
DEFAULT_LOGGING_BUCKET
. Pour plus d'informations, reportez-vous à Configuration de la trace SQL sur Autonomous Database. -
clientID
: est l'identifiant client. Pour plus d'informations, reportez-vous à Activation de la trace SQL sur Autonomous Database. -
moduleName
: nom du module. Pour plus d'informations, reportez-vous à Activation de la trace SQL sur Autonomous Database. -
numID1
_numID2
: deux identificateurs fournis par l'utilitaire SQL Trace. Les valeurs numériquesnumID1
etnumID2
distinguent chaque nom de fichier trace des autres sessions à l'aide de la fonction de trace et de la création de fichiers trace dans le même bucket dans Cloud Object Storage.Lorsque le service de base de données prend en charge le parallélisme et qu'une session exécute une requête parallèle, la fonction SQL Trace peut générer plusieurs fichiers trace avec différentes valeurs
numID1
etnumID2
.
Lorsque la fonction de trace SQL est activée et désactivée plusieurs fois au cours de la même session, chaque itération de trace génère un fichier trace distinct dans la banque d'objets cloud. Pour éviter d'écraser les traces précédentes générées dans la session, les fichiers générés suivent la même convention de dénomination et ajoutent un suffixe numérique au nom du fichier trace. Ce suffixe numérique commence par le nombre 1 et est incrémenté de 1 pour chaque itération de trace par la suite.
Par exemple, voici un exemple de nom de fichier trace généré lorsque vous définissez l'identificateur client sur "sql_test
" et le nom de module sur "modname
" :
sqltrace/sqlt_test/modname/sqltrace_5415_56432.trc
Vous pouvez exécuter TKPROF
pour convertir le fichier trace en fichier de sortie lisible.
Pour plus d'informations sur l'utilisation de l'utilitaire TKPROF
, reportez-vous à la section "Outils de trace d'application de bout en bout" du Guide de réglage SQL Oracle Database.
Rubrique parent : Exécution de la fonction de trace SQL sur Autonomous Database
Visualisation des données de trace dans la vue SESSION_CLOUD_TRACE sur Autonomous Database
Lorsque vous activez la fonction de trace SQL, les mêmes informations de trace enregistrées dans le fichier trace de la banque d'objets cloud sont disponibles dans la vue SESSION_CLOUD_TRACE
de la session dans laquelle la fonction de trace a été activée.
Tant que vous êtes dans la session de base de données, vous pouvez visualiser les données de trace SQL dans la vue SESSION_CLOUD_TRACE
. La vue SESSION_CLOUD_TRACE
comprend deux colonnes : ROW_NUMBER
et TRACE
:
DESC SESSION_CLOUD_TRACE
Name Null? Type
---------- ----- ------------------------------
ROW_NUMBER NUMBER
TRACE VARCHAR2(32767)
Le paramètre ROW_NUMBER
indique l'ordre des données de trace trouvées dans la colonne TRACE
. Chaque ligne de sortie de trace écrite dans un fichier trace devient une ligne de la table et est disponible dans la colonne TRACE
.
Une fois la fonction de trace SQL désactivée pour la session, vous pouvez exécuter des requêtes sur la vue SESSION_CLOUD_TRACE
.
Par exemple :
SELECT trace FROM SESSION_CLOUD_TRACE ORDER BY row_number;
Les données dans SESSION_CLOUD_TRACE
persistent pendant toute la durée de la session. Une fois la session déconnectée ou fermée, les données ne sont plus disponibles.
Si SQL Trace est activé et désactivé plusieurs fois au cours de la même session, SESSION_CLOUD_TRACE
affiche les données de trace de toutes les itérations de manière cumulée. Par conséquent, la réactivation de la fonction de trace dans une session après la désactivation de la fonction de trace précédente ne supprime pas les données de trace générées par l'itération précédente.
Rubrique parent : Exécution de la fonction de trace SQL sur Autonomous Database