Bloqueos de Tablas

Yalayon, otra vez molestándote, ocurren demasiados bloqueos en la BD, y hace que otros aplicativos no puedan acceder a la BD.
Me parece son los aplicativos, o tendría que revisar la BD (Oracle 10g).
Gracias de antemano.
Saludos.
Respuesta
1
Don't worry!
10g es muy versátil y en cuant oa bloqueo el RDBMS se gestiona muy bien. Sin embargo entra en el Enterprise Manager, revisa los asesores de espacio, alerts, etc,. Analiza si tienes suficiente espacio en el Tablespace UNDO y si esta opción está activada desde luego. Si todo esto marcha bien, no queda otra que cazar a los pajaritos ...
1.- Monitorea las sessiones y ve cuales son las que tardan más y consumen más recursos.
2.- Crea un indice por cada constraint FK que tengas.
3.- Cuida de que tu diseño de MER no contenga tablas con alto número de relaciones centralizadas hacia ella.
3.- Educa a los usuarios (caele a palos si es posible) de que se salgan con "exit" y no cerrando simplemente la ventana de Windows.
4.- Levanta una campaña para que los programadores utilicen al mínimo posible los "Lock Table", "Select for Update", etc.
5.- Configura un TIMEOUT en la instancia para que finalice las sesiones ociosas durante cierto tiempo.
Lo que pasa que en 9i era algo opcional recomendado, pero tienes razón en 10g es obligatorio, ya los RBS no se usan sino solo UNDO. Solo por procedimiento asegurate de estos parámetros:
undo_management=AUTO
undo_retention=1800
undo_tablespace=UNDOTBS1
Cuando hablas de Si la opción esta activada, te refieres a que ¿una BD Oracle puede existir sin contar con UNDO TABLESPACE?. SI no me equivoco este tablespace es necesario porque contiene los UNDO SEGMENTS necesarios para la recuperación de datos al hacer Rollback.
Saludos.
No te preocupes, a mi me falta un mundo todavía.
UNDO_RETENTION es un feature introducido desde 9i (si más no me equivoco), con la finalidad de configurar el tiempo en segundos en que se mantendrá disponible la data ya validada en los segmentos de UNDO. El valor por default es 900, equivalente a 15 min, lo que significa, que después de este tiempo el RDBMS no garantizará que el dato se encuentro en dicho espacio de deshacer. Esto es aplicable al manejo de Rollback, Flashback, etc. En mi caso lo tengo el doble, por características propias de mi instancia, pero no se debe abusar de este valor, demasiado es perjudicial (espacio innecesario) y muy poco también ya que disminuirías la efectividad de las consultas o transacciones largas.
Lo importante es que te vayas familiarizando e investigando cada cosa poco a poco, todo a la vez, creéme va hacer que te vuelvas loco, por tanta información junta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas