Desactivacion/Activacion de Indices

Finikito
02 de Diciembre del 2008
Buenos d铆as a todos, tengo un problema y estoy buscando una alternativa. Les comento mi caso. Tengo realizados una serie de procedimientos almacenados que son los encargados de llamar a una serie de procedimientos que mediante cursores se conectan a otras instancias mediante DBLINK y voy realizando mapeos de campos para insertar en mi BB.DD de destino.

Pues bien los procedimientos de migraci贸n desactivan primero las constraint, luego los indices y finalmente los trigger..despues se inicia la fase de procesamiento de datos para finalmente volver a activar trigger, indices, y constraint.

He estado investigando y he visto que tengo dos alternativas...

1-Poner los indices unusuables "ALTER INDEX <NOMBRE> UNUSUABLE" para despues efectuarle un "REBUILD"--> Esto realmente no hace lo que yo espero, y a veces no me "reactiva" los indices.

2-Otra soluci贸n que me han dado es hacer un DROP INDEX , despues hacer la migraci贸n y una vez hecha realizar un CREATE INDEX para restablecerlo..no me atrevo a meter mano en la BB.DD para realizar esta operaci贸n.

Me gustar铆a saber que alternativas tengo y cual es la mejor para seguir en estos casos..es una BB.DD grande y tengo que tratarla con cuidado ya que factores como tiempo/rendimiento se consideran importantes. Muchisimas gracias.

Finikito
02 de Diciembre del 2008
a煤n sigo teniendo otro problema.

Se supone que si tengo las PK, FK, y todos los indices y trigger desactivados para una tabla, cuando proceso informaci贸n para insertar en ella me da el siguiente error:

ORA-01502: el 铆ndice \\'HIS.IADMEPISODIO_PK\\' o una partici贸n del mismo est谩n en estado inutilizable

No entiendo muy bien porque me esta ocurriendo esto pero necesito ayuda.. Gracias a todos


11 de Octubre del 2016

HOla, alguna solución encontraste ? Alguna conclusión sobre índices no usables ?

 

Encontré esta referencia: http://mi-blog-sobre-oracle.blogspot.com.es/2013/09/ora-01502.html

 

Saludos.