viernes, 27 de mayo de 2016

Statspack

¿Qué es Statspack?


Es una herramienta que contiene Oracle, querecopila información de las vistas más importantes del

rendimiento. Este además analiza dichas estadísticas y genera un reporte con el diagnóstico global

de rendimiento. Además muestra la información recopilada en un formato legible para el

administrador de la Base de Datos.
¿Como es el reporte que genera?


El reporte que genera cuenta con una estructura definida:

En primer lugar nos muestra el diagnóstico en sí, en el cual se encuentran los indicadores de

desempeño (medición de las principales variables), y a continuación, los eventos que inciden en el

rendimiento.

En segundo lugar el reporte nos presenta todos los eventos de la base de datos.

Luego las sentencias SQL más consumidoras de recursos ordenadas de 4 formas:

-SQL ordenadas por llamadas.

-SQL ordenadas por lecturas.

-SQL ordenadas por ejecuciones.

-SQL ordenadas por llamadas analizadas.

A continuación, un listado de todas las estadísticas de la base de datos.

Continua con un listado de las tablespaces y los datafiles ordenados por la suma de lecturas y

escrituras.

Las siguientes estadísticas son las de uso de :

-Buffer pool

-PGA

-Undo Segments

-Latches

-Shared pool

Por último nos enseña parámetros del init.ora
ANÁLISIS DEL RENDIMIENTO DE ORACLE – ALEJANDRO CAMPOS 5

¿Cómo se instala?


Antes de instalar Statspack, es recomendable la creación de un tablespace de un mínimo de 500M,

ya que al instalarlo nos pedirá un tablespace que designar para la utilización de Statspack.

Para instalar Statspack, tan solo tendremos que ejecutar en sql plus, con cualquier usuario que

funcione como sysdba, el siguiente script:

@?/rdbms/admin/spcreate.sql

Este script creará también el usuario perfstat.

En la instalación se nos pedirá que elijamos el password del usuario perfstat, así como el tablespace

por defecto, y el tablespace temporal.
¿Cómo se recopilan las estadísticas?


Para tomar una foto en un momento determinado se debe de ejecutar el siguiente comando como

usuario perfstat en sql plus:

exec statspack.snap;

Sin embargo es recomendable automatizar la ejecución anterior, de forma que se fija la ejecución

del statspack cada hora exacta (7:00,8:00,9:00,....). Para ello se debe ejecutar el siguiente script:

@?/rdbms/admin/spauto.sql
¿Cómo se genera un reporte?


Para generar un reporte hay que ejecutar el siguiente script como usuario perfstat:

@?/rdbms/admin/spreport.sql

Se pedirá que indiques la instantánea inicial y la final de la que quieres hacer el reporte. También la

ubicación del fichero.
ANÁLISIS DEL RENDIMIENTO DE ORACLE – ALEJANDRO CAMPOS 6

Scripts Statspack

Instalación (como usuario sysdba):

-spcreate.sql: Instala Statspack ejecutando a su vez los scripts:

spcusr.sql: Crea el usuario PERFSTAT

spctab.sql: Crea las tablas

spcpkg.sql: Crea el paquete statspack

-spdrop.sql: Desinstala STATSPACK ejecutando a su vez los scripts:

spdtab.sql: Borra las tablas

spdusr.sql: Borra el usuario PERFSTAT
Informes (como usuario perfstat):

-spreport.sql: Genera un informe general del rendimiento de la instancia

-sprepins.sql: Genera un informe para la BD y la instancia indicados

-sprepsql.sql: Genera un informe para la sentencia SQL que se indique.

-spauto.sql: Permite automatizar la recolección de estadísticas.
Mantenimiento (como usuario perfstat):

sppurge.sql -> Permite borrar un rango de snapshots

sptrunc.sql -> Vacía todas las tablas, borrando todos los snapshots

spuexp.par -> Es un fichero de parámetros para exportar el usuario perfstat

No hay comentarios: