Fala galera, hoje venho com uma novidade pra vocês, um script pra ajudar muito no seu dia-dia. Quer saber como estão seus indices, se estão sendo de fato utilizados, como esta a fragmentação, quer ver as colunas do INCLUDE então acho que vai gostar desse script.
Sabemos das limitações da SP_HELP que não mostra os campos do INCLUDE, da SP_HELPINDEX que nos dá poucas informações, das dificuldades de ter que ficar desenvolvendo scripts para ver utilização de indices, tamanho, fragmentação, colunas no include e etc. Com intuito de facilitar nossa vida caso você não tenha nada parecido eu e meu amigo Paulo Katayama estamos disponibilizando uma procedure chamada SP_SHOWINDEX que vai te ajudar muito, mostraremos um pouco dela logo abaixo.
Deixa eu falar um pouco como surgiu essa procedure, esse script que traz essas belas informações foi desenvolvido pelo meu amigo Paulo Katayama vulgo Japa rs o qual tive a grande oportunidade de trabalhar ao lado dele e aprender muito com esse fera, sempre utilizei esse script nos ambientes que administro, porém ultimamente percebi que poucas pessoas conseguiam chegar com facilidade nessas informações exibidas por esse script, daí surgiu então a ideia de compartilhar com vocês esse script de uma forma simples de utiliza-lo através de uma Store Procedure, espero que gostem.
Compartilho com vocês essa Store Procedure com total consentimento do meu amigo Paulo Katayama.
Como será a primeira versão da procedure contamos com a ajuda de vocês para validarem suas funcionalidades, qualquer dúvida, sugestão ou problemas que venha a ter com ela entre em contato conosco para que possamos melhora-la cada vez mais.
Lembre-se utilize por sua conta e risco, não nos responsabilizamos pelo seu uso ‘rs’.
Vamos lá, vamos conhecer então a SP_SHOWINDEX.
Cabeçalho da procedure, informações do autor e pagina para contato.
Parâmetros suportados na chamada da procedure.
Descrição de cada coluna exibida.
Essas informações acima você consegue acessar na procedure chamando com o parâmetro @HELP = 1.
Vamos ver algumas demonstrações.
A chamada da SP_SHOWINDEX acima filtrando apenas a tabela ‘OrdersBig’, essa chamada retorna apenas um ResultSet, eu dividi em 3 partes no print para ficar melhor a visualização.
Podemos ver então algumas coisas legais já como quantidade de seeks, scans, lookups, updates, colunas que compõe o índice, colunas que estão no include do índice, comando para excluir o índice, comando para criar o índice, ultima vez que foi executado um seek, scan, lookup e update, se o índice é uma PK, se o índice é único e se o índice esta habilitado ou não.
@INDEX_DETAILS -Podemos ver quantidade de paginas do índice, quantidade de linhas aproximada, fator de preenchimento do índice e tipo de compressão.(Atualizado 29/11/2016)
@INDEX_FRAGMENTATION – Podemos ver a média de fragmentação de cada índice e a quantidade de paginas.
@NOTUTILIZED – Podemos ver os indices que nunca foram utilizados, ou que foram utilizados a mais de 1 mês.
@LIMITED – Uma visualização mais simples apenas com as principais colunas.
@IS_DISABLED – Mostra indices desabilitados.
Podemos também combinar qualquer parâmetro na chamada da procedure.
Podemos chamar sem nenhum filtro, irá trazer informações de todos os indices de tabelas de usuários.
@HELP – Informações sobre a procedure.
Bom galera é isso, baixem ai a primeira versão e deixe seu feedback para podermos melhora-lá, espero que gostem.
Dicas, sugestões, criticas são sempre bem vindas galera, alguns parâmetros estão ainda sendo avaliados e podemos mudar em breve, então se tiverem sugestões deixe ai no comentário, até a próxima.
Link para Download:
https://drive.google.com/file/d/0B5j2xWOxw677aEs3U2R6UDN2Z1U/view?usp=sharing
Aplicado correções e alguns novos itens.
Atualizado em: 06/01/2017
Reginaldo Silva