« Oracle11gr2 : Claúsula IGNORE_ROW_ON_DUPKEY_INDEX , para evitar los errores ORA-0001Oracle11gr2 : Ahora Oracle nos arregla el típico problema de semáforos (Installation Fixup Scripts) »

Oracle11gr2 : Nueva característica de los índices UNUSABLES (UNUSABLE INDEX)



En Oracle11gr2 tenemos 2 opciones para dejar sin uso un índice

  • Puede ser mediante ALTER INDEX UNUSABLE
  • O puede ser mediante ALTER INDEX INVISIBLE

    La opción de UNUSABLE (que es el motivo de este post :yes: ) , viene con una característica nueva.

    Cuando se genera un índice en estado UNUSABLE , este índice no genera espacio a diferencia de lo que sucede en Oracle11gr1 o inferior.

    Ejemplos de está pequeña característica :

    1.- Creamos una tabla de ejemplo con un índice común y corriente del tipo B*Tree

    2.- Verificamos el estado de los objetos y del índice, más su tamaño

    3.- Alteramos nuestro índice , para dejarlo como UNUSABLE

    4.- Volvemos a preguntar por sus segmentos y vemos que siguen ocupando el mismo tamaño

    5.- Ahora creamos un índice en estado UNUSABLE

    6.- Verificamos su tamaño y nos damos cuenta que ha generado un segmento ,pero sin bloques (en realidad sólo la estructura)

    7.- Procedemos a truncar la tabla

    8.- Y nos damos cuenta que el anterior índice UNUSABLE, lo deja como válido y sin espacio en su segmento

    Espero les sirva


  • by Ligarius
    03.09.09. 11:27:58. 191 words, 6203 views. Categories: Tuning / Performance, Oracle11gR2 ,