none
Objetos não utilizados SQL RRS feed

  • Pergunta

  • Prezados,

    Esou com uma problema, preciso saber quais objetos que não estão sendo utilizados no SQL Server.

    Exemplo a tabela TB_TESTE preciso saber se ela foi acessada e quando foi a ultima vez que foi acessada, e isso com View e Procedures.

    Tenho SQL Server 2005.

    Obrigado

    sexta-feira, 9 de maio de 2014 11:46

Respostas

  • VCLHYDRA,

    Você pode utilizar a DMV "dm_db_index_usage_stats" para saber às últimas atualizações de dados e de uso de índices.

    Veja um exemplo abaixo:

    SELECT 
    OBJECT_NAME(object_id) AS tabela,
    MAX(last_user_lookup) AS ultimo_lookup,
    MAX(last_user_scan) AS ultimo_scan,
    MAX(last_user_seek) AS ultimo_seek,
    MAX(last_user_update) AS ultimo_update
    FROM sys.dm_db_index_usage_stats
    WHERE database_id = DB_ID('SeuBanco')
    --AND ius.[object_id] = OBJECT_ID('SuaTabela')
    GROUP BY database_id, object_id
    ORDER BY ultimo_scan DESC, ultimo_update DESC;
    GO

    Para saber mais sobre "dm_db_index_usage_stats" veja:

    http://msdn.microsoft.com/en-us/library/ms188755.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    sexta-feira, 9 de maio de 2014 12:18

Todas as Respostas

  • VCLHYDRA,

    Você pode utilizar a DMV "dm_db_index_usage_stats" para saber às últimas atualizações de dados e de uso de índices.

    Veja um exemplo abaixo:

    SELECT 
    OBJECT_NAME(object_id) AS tabela,
    MAX(last_user_lookup) AS ultimo_lookup,
    MAX(last_user_scan) AS ultimo_scan,
    MAX(last_user_seek) AS ultimo_seek,
    MAX(last_user_update) AS ultimo_update
    FROM sys.dm_db_index_usage_stats
    WHERE database_id = DB_ID('SeuBanco')
    --AND ius.[object_id] = OBJECT_ID('SuaTabela')
    GROUP BY database_id, object_id
    ORDER BY ultimo_scan DESC, ultimo_update DESC;
    GO

    Para saber mais sobre "dm_db_index_usage_stats" veja:

    http://msdn.microsoft.com/en-us/library/ms188755.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    sexta-feira, 9 de maio de 2014 12:18
  • Muito Obrigado, mas em qual coluna devo me basear para ver que não está sendo utilizado?


    sexta-feira, 9 de maio de 2014 12:50
  • VCLHYDRA,

    Esta DMV apresenta uma coluna denominada: Last_User_Update, é com base nesta coluna.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]

    sexta-feira, 9 de maio de 2014 12:57
    Moderador