sábado, 6 de abril de 2013

Preguntas y respuestas de mi base datos Oracle

Siempre tenemos que mirar nuestra base para cuidar que su crecimiento no sea abrupto, lo peor que nos puede pasar es que las entidades más grandes, sean las que más se consultan y esto suele pasar seguido. Para llevar un control respondamos 3 preguntas:

Cual son los 40 objetos más grande de mi base de datos?


select * from (
select owner, segment_name, bytes/1024/1024 Size_Mb from dba_segments order by
bytes/1024/1024  DESC )
 where rownum <= 40

Cual son las 40 tablas más grande de mi base de datos?


select *
from (select segment_name "Table Name",
round(sum(bytes)/1024/1024, 2) "Size MB"
from dba_extents
where segment_type = 'TABLE'
group by segment_name
order by 2 desc)

Cuales son los objetos más accedidos?


SELECT ROWNUM AS RANK, Seg_Lio.*
  FROM (  SELECT St.Owner,
                 St.Obj#,
                 St.Object_Type,
                 St.Object_Name,
                 St.VALUE,
                 'LIO' AS Unit
            FROM V$segment_Statistics St
           WHERE St.Statistic_Name = 'logical reads'
               AND St.Owner='TN32_UAT'
        ORDER BY St.VALUE DESC) Seg_Lio
 WHERE ROWNUM <= 15
UNION ALL
SELECT ROWNUM AS RANK, Seq_Pio_r.*
  FROM (  SELECT St.Owner,
                 St.Obj#,
                 St.Object_Type,
                 St.Object_Name,
                 St.VALUE,
                 'PIO Reads' AS Unit
            FROM V$segment_Statistics St
           WHERE St.Statistic_Name = 'physical reads'
               AND St.Owner='TN32_UAT'
        ORDER BY St.VALUE DESC) Seq_Pio_r
 WHERE ROWNUM <= 15
UNION ALL
SELECT ROWNUM AS RANK, Seq_Pio_w.*
  FROM (  SELECT St.Owner,
                 St.Obj#,
                 St.Object_Type,
                 St.Object_Name,
                 St.VALUE,
                 'PIO Writes' AS Unit
            FROM V$segment_Statistics St
           WHERE St.Statistic_Name = 'physical writes'
               AND St.Owner='TN32_UAT'
        ORDER BY St.VALUE DESC) Seq_Pio_w
 WHERE ROWNUM <= 15

Con el resultado de estas consultas podemos tomar decisiones antes que la base se vuelva lenta.