2010-09-02 26 views
6

Me gustaría una herramienta que supervise el servidor sql mientras pruebo mi aplicación. Por supuesto, el aplicador ejecutará consultas diferentes.Herramienta para encontrar los cuellos de botella de la base de datos en el servidor sql

Desde la herramienta me gustaría una salida como: - esta consulta era lento porque el índice no se encuentra en este campo

y este tipo de información.

Pero me gustaría tener una manera de resaltar datos cruciales, puede haber, por ejemplo, 100 índices faltantes, pero 99 de ellos mejorarían el rendimiento de 0.05%, mientras que uno de ellos daría un beneficio de 6000% en una consulta. Por lo tanto, resaltar los puntos calientes también es importante.

También se desea un producto comercial (con todas las funciones, sin limitaciones) de prueba).

Respuesta

11

No necesita exactamente una herramienta. Yo personalmente uso la siguiente consulta para mostrarme lo que piensen los índices de SQL Server que necesita, esto muestra la frecuencia con SQL Server buscó el índice, la mejora prevista etc ...

SELECT user_seeks * avg_total_user_cost * (avg_user_impact * 0.01) AS index_advantage, 
    migs.last_user_seek, 
    mid.statement AS 'Database.Schema.Table', 
    mid.equality_columns, 
    mid.inequality_columns, 
    mid.included_columns, 
    migs.unique_compiles, 
    migs.user_seeks, 
    migs.avg_total_user_cost, 
    migs.avg_user_impact 
FROM sys.dm_db_missing_index_group_stats AS migs WITH (NOLOCK) 
INNER JOIN sys.dm_db_missing_index_groups AS mig WITH (NOLOCK) 
    ON migs.group_handle = mig.index_group_handle 
INNER JOIN sys.dm_db_missing_index_details AS mid WITH (NOLOCK) 
    ON mig.index_handle = mid.index_handle 
ORDER BY index_advantage DESC; 

Si desea identificar consultas lentas Analizador de SQL es tu amigo, solo establece un filtro de duración y estás listo. A continuación, ejecute esta consulta a través del Asesor de ajuste de motor de la base de datos (ambos vienen con SQL Server).

+0

Acabo de ejecutar esa consulta en una de mis bases de datos. ¿Podría agregar un enlace a un documento que explique cómo interpretar los resultados? Gracias ! –

+2

Encontrado: http://sqlblogcasts.com/blogs/sarveshsingh/archive/2010/08/23/index-usage.aspx –

+1

http://msdn.microsoft.com/en-us/library/ms187974%28v= SQL.90% 29.aspx allí va :) –

2
  • de SQL Server
  • Asesor de base de datos SQL
0

Eche un vistazo a SQL Copilot. Hay una versión gratuita, y la versión completa es barata (alrededor de 50 $).
Tenga en cuenta que, aunque lo uso y me pareció útil para plantear algunos problemas y como una herramienta de aprendizaje, todavía estoy buscando otras herramientas.
Hay mucho que aprender sobre este tema difícil (des) fortunally.

Cuestiones relacionadas