SQL Server - Bloqueo de Tablas

 
Vista:

Bloqueo de Tablas

Publicado por Ale Torres (3 intervenciones) el 12/01/2009 18:24:29
Hola gente: tengo un problemoon. a ver...
Puede ser que se me bloqueen ciertas tablas o registros de una BD? porque a algunos usuarios se le clava el sistema cuando hacen por ejemplo una consulta de empresas, y a otros en el mismo momento se le clava cuando consulta los emppleados de esa empresa, sin dudas entan relacionadas las tablas de consultas. Lei algo sobre bloqueos de tablas o el isolationlevel, me gustaria que me ayuden a resolver esto porque es un problema ya que debo reiniciar el sql cada vez que pasa esto. muchisimas gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Bloqueo de Tablas

Publicado por Mau (67 intervenciones) el 12/01/2009 20:05:20
Que tal, tu problema puede ser debido a varias cosas, entre ellas posiblemente el bloqueo de páginas o de registros que debido a transacciones muy largas en donde los SELECT están esperando un COMMIT para poder ver los registros "limpios". Me refiero con limpios que no estén en medio de una actualización.

Normalmente, esto se soluciona:

1. Mejorando el código de los stored procedures y triggers
2. Haciendo algún cambio en el diseño de las tablas para acelerar su actualización (normalizar aún más si es posible)
3. Reducir el número de índices para acelerar la actualización
4. Modificar físicamente los archivos de la base para que sea más ágil la actualización, especialmente separando el Log de los datos.
5. Modificar en los SELECT el nivel de aislamiento (isolation level)

Este útimo no lo recomiendo mucho, porque puede crear inconsistencias. También deberías analizar si no hay muchos usuarios actualizando los mismos registros al mismo tiempo. En tal caso, la mejor opción es optimizar el código para que sea lo más rápido de ejecutar que te sea posible.

Lo de reiniciar el servicio para evitar bloqueos definitivamente no es una buena práctica y no es normal.

Espero que te haya podido orientar un poco. Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar