![]() |
|||||||||||||||||||||||||||||||||||||||||||||||
|
Installer statspack Qu’est ce que c’est statspack ?
Statspack est un ensemble d’utilitaires (scripts, packages, procédures et fonctions stockées) qui permet de suivre finement les performances des bases Oracle (package livré à partir de la 8i). Il fournit des fonctionnalités supérieures à UTLBSTAT/UTLESTAT, bien que ces scripts continuent d’exister dans les versions actuelles. Une documentation exhaustive concernant STATSPACK est disponible dans $ORACLE_HOME/rdbms/admin/spdoc.txt.
Je recommande vivement à tous d’installer ce package, surtout mes clients, l’activité de tuning se verra largement accélérée ! Pour déployer le package statspack, un utilisateur (PERFSTAT) spécialement créé a un accès limité aux vues V$ nécessaires aux prises de mesures de suivi de performances. Les résultats des prises des mesures sont stockés dans des tables spécifiques à cette activité. De par la volumétrie importante de stockage de mesures, un tablespace dédié à cette activité est indispensable. Les mesures concernant une prise d’indicateurs de performances pour une base à un moment donné sont connues sous le nom de snapshot. Le DBA a la possibilité d’effectuer plusieurs mesures et interpréter le comportement d’une instance entre deux prises de mesures. gate@tafora SQL> create tablespace statspack datafile 'i:\db\gate\stats\statspack.dat' size 300M reuse extent management local uniform size 1M; create temporary tablespace statstemp tempfile 'i:\db\gate\stats\statstemp.dat' size 300M reuse extent management local uniform size 1M;Pour installer ce package, utiliser les scripts fournis par Oracle: cd $ORACLE_HOME/rdbms/adminSupprimer le schéma de PERFSTAT sqlplus "/ as sysdba" @spdrop.sqlCréer le schéma de PERFSTAT, indiquer les noms de tablespaces support du schéma sqlplus "/ as sysdba" @spcreate.sqlUtiliser le package (prendre un snapshot des performances): sqlplus perfstat/perfstat exec statspack.snap; Utiliser le package (prendre un autre snapshot des performances):
exec statspack.snap;Trouver la liste des snapshots select SNAP_ID, SNAP_TIME from STATS$SNAPSHOT;Mesurer le comportement de la base entre deux prises de mesures en indiquant deux identifiants des mesures : @spreport.sql Quelques scripts utils : sppurge.sql - Supprimer une plage de Snapshot Ids spauto.sql - lancer un job qui collecte régulièrement les mesures de performance spcreate.sql - créé l’utilisateur PERFSTAT (lancer en SYS). spdrop.sql - désinstalle le package (lancer en SYS) spreport.sql - lance la création d’un rapport différence entre deux snapshots sptrunc.sql - tronque les données dans les tables de prises de mesures Stats
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||