Query INDICI PARTIZIONATI INVALIDI Oracle

Pubblicato da Patrizia Gardis il

Con l’articolo Query INDICI PARTIZIONATI INVALIDI Oracle,
vediamo tutti gli indici invalidi,
che puntano a tabelle partizionate
degli utenti del database.

Quando occorre cancellare una partizione di una tabella con numerose partizioni, bisogna fare molta attenzione in fase della drop della partizione, poichè se non viene dichiarato la clausala UPDATE GLOBAL INDEX nel fine del comando di drop l’indice globale di tutte le partizioni ovvero della tabella passerà allo stato invalido e quindi inutilizzabile.

Questo causerà grossi problemi poichè gli statement che insisterebbero sulla tabella, causerebbero dei full_table_scan e quindi grossi rallentamenti generalizzati per via dell’eccessivo consumo di risorse (CPU, read disk I/O).

Un altro grosso problema è il tempo di indisponibilità della tabella che durerà per tutto il tempo della rebuild dell’indice.la

Con la Query per individuare gli indici partizioni Oracle possiamo individuare se effettivamente si è creata questa drammatica situazione.

I campi che selezioniamo sono:

OWNER – Proprietario dell’indice.
INDEX_NAME – Nome dell’indice.
PARTITION_NAME – Nome della partizione.
STATUS – Status dell’indice.

In otre le informazioni sopra menzionate,
le vediamo dalla vista DBA_IND_PARTITIONS.

In fine, filtriamo le informazioni dalla condizione
STATUS <> ‘VALID’ e
INDEX_OWNER è diverso da SYS e SYSTEM.

Query INDICI PARTIZIONATI INVALIDI Oracle:

set lines 400
col owner for a10
col index_name for a25
select INDEX_OWNER,index_name,partition_name,status
from dba_ind_partitions
where status <>'VALID'
and index_owner not in ('SYSTEM','SYS')
order by 1,2;

Per visionare le mie guide sui Comandi CRS clicca qui!
A questo LINK, invece, troverai le query SQL

Resta aggiornato sulle nostre attività entrando a far parte della nostra community:
Facebook
Youtube
Linkedin


0 commenti

Lascia un commento

Segnaposto per l'avatar