web-dev-qa-db-fra.com

Comment puis-je vérifier la dernière exécution des statistiques sur Oracle sans utiliser OEM

Je souhaite vérifier la dernière exécution des statistiques sur mon serveur Oracle 10g. Je le ferais normalement via OEM, mais pour des raisons indépendantes, OEM est en panne. Existe-t-il un moyen de vérifier cela en utilisant simplement sqlplus? Il serait très utile que la sortie soit correctement formatée.

24
Jacob

Toutes les tables de dictionnaire de données suivantes ont une colonne LAST_ANALYZED (remplacez * par USER/ALL/DBA selon le cas:

*_TABLES
*_TAB_PARTITIONS
*_TAB_SUBPARTITIONS
*_INDEXES
*_IND_PARTITIONS
*_IND_SUBPARTITIONS

(Il y a beaucoup plus dans les champs d'histogrammes, mais je ne vais pas aussi loin.)

Inversement, ALL_TAB_MODIFICATIONS affiche les lignes insérées/mises à jour/supprimées (ou l'horodatage sur lequel une table/partition/sous-partition a été tronquée) car des statistiques d'optimiseur ont été collectées.

29
Adam Musch
SELECT LAST_START_DATE 
 FROM DBA_SCHEDULER_JOBS 
WHERE job_name='GATHER_STATS_JOB';

Vous devrez peut-être modifier le format de la date en fonction de vos paramètres SQLPLUS/NLS.

2
David Mann