Principales respuestas
OPTIMIZAR BASE DE DATOS - DB LENTA

Pregunta
-
Hola a todos, tengo un servidor windows 2012 r2 con sql 2014, mi problema es el siguiente, tengo 30 bases de datos con la misma extructura, pero con datos diferentes, equivalen a los 30 clientes que tengo en mo aplicativo, pero una de estas db, esta muy lenta, por ejemplo corro un procedimiento almacenado en todas las db y demora el procedimiento maximo 3ms, pero en esta db dura 10 minutos, el tama;o y la informacion de todas las db es similar, pero no se que esta sacrificando tanto el rendimiento de esta db, alguien que alla tenido el mismo problema o que tenga nociones decomo encontrar que esta fallando, o me podrian indicar que tengo que analisar, etc, porfa necesito ayuda..
Respuestas
-
Puede que en la base de datos que va lenta no esten bien acualizadas las estadisticas, y que por eso el optimizador de consultas este generando planes de ejecucion equivocados. Fijate en alguna sentencia que vaya lenta en esa base de datos y rapida en otras, y desde SSMS pidele el plan de ejecucion en ambas bases de datos. Observa a ver que diferencias se aprecian. Si en las bases rapidas el plan indica que se estan usando los indices, y en la base lenta no se estan usando, eso indicaria que las estadisticas estan desactualizadas, o bien el plan de ejecucion cacheado para el procedimiento se ha quedado anticuado. Si el problema fuera uno de estos, puedes actualizar las estadisticas con UPDATE STATISTICS, y puedes actualizar los planes cacheados con sp_recompile.
- Propuesto como respuesta Jorge TurradoMVP viernes, 15 de septiembre de 2017 10:59
- Marcado como respuesta Juan MondragónModerator viernes, 22 de septiembre de 2017 21:55
Todas las respuestas
-
-
Puede que en la base de datos que va lenta no esten bien acualizadas las estadisticas, y que por eso el optimizador de consultas este generando planes de ejecucion equivocados. Fijate en alguna sentencia que vaya lenta en esa base de datos y rapida en otras, y desde SSMS pidele el plan de ejecucion en ambas bases de datos. Observa a ver que diferencias se aprecian. Si en las bases rapidas el plan indica que se estan usando los indices, y en la base lenta no se estan usando, eso indicaria que las estadisticas estan desactualizadas, o bien el plan de ejecucion cacheado para el procedimiento se ha quedado anticuado. Si el problema fuera uno de estos, puedes actualizar las estadisticas con UPDATE STATISTICS, y puedes actualizar los planes cacheados con sp_recompile.
- Propuesto como respuesta Jorge TurradoMVP viernes, 15 de septiembre de 2017 10:59
- Marcado como respuesta Juan MondragónModerator viernes, 22 de septiembre de 2017 21:55