Borrar registros en una BD Oracle

Empecé a borrar 1.000.000 de registros de una tabla que tiene 12.000.000 de registros y en los últimos 100.000 empezó a borrar en forma muy pero muy lenta. Lo raro es que cualquier consulta sobre esta tabla se realiza en forma rápida. Tengo Oracle8. ¿Qué puede haber pasado?

2 Respuestas

Respuesta
1
Puede ser un problema de rollbacks que no los tengas tan grandes (20M) con extents de 5M, o bien si es solo una transacción puede ser que tengas problemas en los redo logs, ya sea porque están pequeños o porque tienes pocos...
Crea un rollback grande y se lo asignas al proceso
set transaction use rollback segment <nuevo>;
Respuesta
1
Generalmente eso sucede cuando son muchos registros y no se confirma su transacción con el uso del 'COMMIT', me ha pasado muchas veces... lo que yo hago es realizar commit cada 1000 registros borrados. Recuerda que del commit aplicado no hay rollback que valga. Prueba eso, no le dejes mucha carga a los rollback segments y me cuentas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas