El objetivo de este documento es explicar cómo se instala statspack y cómo se puede configurar statspack para obtener instantáneas de la base de datos en un momento determinado.
2.1 Para realizar la instalación de statspack hay que tener previamente creado un tablespace disponible para la instalación.
2.2 Nos conectamos a la base de datos en la que queremos instalar STATSPACK y ejecutamos con el usuario sys el script $ORACLE_HOME/rdbms/admin./spcreate.sql
Ejemplo: Instalación de statspack en una base de datos oracle9. Nos conectamos con el usuario oracle9, fijamos la variable ORACLE_SID y lanzamos el script spcreate.sql
$ su – oracle9
$ export ORACLE_SID=orasite
$ sqlplus /nolog
SQL > connect /as sysdba
SQL > @$ORACLE_HOME/rdbms/admin/spcreate.sql
Durante la instalación se van a solicitar los siguientes datos:
* Contraseña para el usuario perfstat: *******
* Tablespace a instalar: Ponemos SYSAUX o PERFSTAT dependiendo de la versión en la que estemos.(tablespace creado en oracle8 y oracle9 o tablespace de oracle10).
En caso de que queramos desinstalar STATSPACK de la misma forma que lo hemos instalado en vez de ejecutar el fichero spcreate ejecutamos el fichero spdrop.sql
SQL> @$ORACLE_HOME/rdbms/admin./spdrop.sql
Para ejecutar statspack y obtener una instantánea de la base de datos en ese momento lo realizamos de la siguiente forma:
4.1 Nos conectamos a la base de datos con el usuario perfstat y ejectuamos statspack.snap
sql > connect perfstat/*****
sql > execute statspack.snap(I_SNAP_LEVEL=>10);
4.2 Si vamos a obtener instantáneas a menudo es conveniente actualizar las estadísticas de perfstat.
sql > connect perfstat/*****
sql > execute dbms_stats.gather_schema_stats(ownname=>'perfstat');
Para obtener un Informe statspack los pasos que hay que seguir son los siguientes (Hay que tener en cuenta que para sacar un informe hay que tener más de una foto y que entre éstas la instancia no se haya caído o parado):
5.1 Con el usuario propietario de oracle nos conectamos a la base de datos como perfstat.
5.2 Ejecutamos el script $ORACLE_HOME/rdbms/admin/spreport.sql . Al ejecutar este script obtenemos todas las fotos que se han realizado y vamos contestando a las peticiones que este te hace:
5.3 Ejemplo para obtener un informe.
$ su – oracle9
$ export ORACLE_SID=orasite
$ sqlplus /nolog
SQL> connect perfstat/******
SQL> @$ORACLE_HOME/rdbms/admin/spreport.sql
- Obtenemos el listado de fotos tomadas:

- Tenemos que elegir el intervalo para obtener el informe (en este caso de la 111 a la 121 -> obtendo el intervalo del 21 de Junio desde las 12 hasta las 12 y 37)
Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 111
Begin Snapshot Id specified: 111
Enter value for end_snap: 121
End Snapshot Id specified: 121
- Especificamos el nombre del informe (carpeta informes)
Specify the Report Name
~~~~~~~~~~~~~~~~~~~~~~~
The default report file name is sp_111_121. To use this name,
press <return> to continue, otherwise enter an alternative.
Enter value for report_name: /opt/scripts/111-121
Así obtenemos el informe de Statspack
Comentarios:
por Pepe | 12/28/2007 4:17:51 PM
RE: Instalación y configuración de Statspack
Muy bueno, gracias!
por Angel | 4/14/2008 3:35:55 PM
RE: Instalación y configuración de Statspack
Muy buena la ayuda. Gracias.
por Juan G | 4/25/2008 12:50:00 AM
RE: Instalación y configuración de Statspack
Excelente
por Mar_CHE | 5/5/2008 10:51:39 PM
RE: Instalación y configuración de Statspack
Muy buena la informacion pero ¿como le hago si deseo que STATSPACK tome una foto cada hora?
por David | 5/13/2008 4:16:41 PM
RE: Instalación y configuración de Statspack
Supongo que te valdría con crear un Job que lo hiciera. No?
por Elias Andrade | 5/20/2008 8:33:56 PM
RE: Instalación y configuración de Statspack
Buenas amigos, pueden anexar una tarea en el crontab para que se ejecute cada cierta frecuencia que ustedes planifiquen ejemplo:
en el archivo de crontab
30 * * * * */home/oraadm100/prog_admin/statspack_snap.sh
contenido del archivo de statspack_snap.sh
****************************************************
#!/bin/csh -x
setenv ORACLE_HOME /apl1/oracle9i
setenv HOME /home/oraadm100/prog_admin
setenv ORACLE_SID XXXXX
$ORACLE_HOME/bin/sqlplus -s perfstat/oracle@XXXXX << EOF
exec statspack.snap;
EOF
exit;
****************************************************
le puedes colocar dentro del script del archivo statspack_snap.sh el hints exec statspack.snap(i_snap_level=>7), dependiendo de lo que deseas obtener
de la instancia.
Saludos y Suerte
por Ruth | 5/27/2008 11:11:40 AM
RE: Instalación y configuración de Statspack
Muchas gracias Elías. Me viene perfecto!
por jose luis | 7/10/2008 3:03:18 PM
RE: Instalación y configuración de Statspack
Se agradece, mas claro que el agua, ni un problema en Oarcle 9.2.07