Dicas

Aumentar o espaço livre no seu banco de dados SQL Server.

Aumentar o espaço livre no seu banco de dados SQL Server.

Saiba como aumentar o espaço livre no seu banco de dados SQL Server.

Aumentar o espaço livre no seu banco de dados SQL Server sempre foi um grande desafio para vários DBA’s.

Recentemente eu publiquei um post que pode ajudar alguns DBA’s SQL Server a aumentar o espaço livre no seu banco de dados no arquivo .mdf, encontrando os índices duplicados no SQL Server isso já ajudava muito.

Mas isso não é o bastante, existem outras formas de você encontrar mais coisas desnecessárias no banco de dados SQL Server e aqui eu vou deixar abaixo para vocês algumas dicas.

1. Encontrando tabelas de backup e tabelas temporárias:

SELECT TOP 30 'DROP TABLE '+OBJECT_NAME(ID) AS [COMANDO],
				OBJECT_NAME(ID) AS NOMEDATABELA,
              INDID, 
              ROWCNT AS LINHAS, 
              RESERVED * 8 AS RESERVADO_KB, 
              DPAGES * 8 AS DADOS_KB, 
              (SUM(USED) * 8) - (DPAGES * 8) AS TAMANHO_INDICE_KB, 
              (SUM(RESERVED) * 8) - (SUM(USED) * 8) AS NAO_UTILIZADO_KB 
         FROM SYSINDEXES 
        WHERE INDID                             IN (0,1) 
          AND OBJECTPROPERTY(ID, 'ISUSERTABLE') = 1
          AND ROWCNT                            > 0
          AND OBJECT_NAME(ID)                   IN (SELECT T.NAME
                                                      FROM SYS.TABLES T
                                                     WHERE T.NAME LIKE '%BKP%'
					                      OR T.NAME LIKE '%ANTES%'
										  OR T.NAME LIKE '%OLD%'
										  OR T.NAME LIKE '%TEMP%'
										  OR T.NAME LIKE '%[0-9]%')
        GROUP BY ID,
                 ROWCNT, 
                 RESERVED, 
                 DPAGES, 
                 INDID 
        ORDER BY 4 DESC 
       GO

2. Encontrando índices que não são utilizados no SQL Server:

 

SELECT TOP 10 'DROP INDEX ['+ISNULL(I.NAME,'HEAP')+'] ON ['+OBJECT_NAME(I.OBJECT_ID)+']' AS [COMANDO],
 OBJECT_NAME(I.OBJECT_ID) AS NOME_DA_TABELA,
 ISNULL(I.NAME,'HEAP') AS [INDICE_NAO_UTILIZADO],
 S.USER_SEEKS,
 CAST((((8 * SUM(A.USED_PAGES)) / 1024.00) / 1024.00) AS NUMERIC(15,4)) AS 'INDEXSIZE(GB)'
 FROM SYS.INDEXES I
 LEFT JOIN SYS.DM_DB_INDEX_USAGE_STATS S
 ON S.OBJECT_ID = I.OBJECT_ID
 AND I.INDEX_ID = S.INDEX_ID
 AND S.DATABASE_ID = DB_ID()
 JOIN SYS.PARTITIONS AS P
 ON P.OBJECT_ID = I.OBJECT_ID
 AND P.INDEX_ID = I.INDEX_ID
 JOIN SYS.ALLOCATION_UNITS AS A
 ON A.CONTAINER_ID = P.PARTITION_ID
 WHERE OBJECTPROPERTY(I.OBJECT_ID, 'ISINDEXABLE') = 1
 AND OBJECTPROPERTY(I.OBJECT_ID, 'ISINDEXED') = 1
 AND I.IS_PRIMARY_KEY = 0
 AND (S.INDEX_ID IS NULL OR (S.USER_UPDATES > 0 AND S.USER_SEEKS < 50 ))
 GROUP BY I.OBJECT_ID,
 I.NAME,
 S.USER_SEEKS
 ORDER BY 5 DESC
 GO

3. Índices que possuem muitas colunas:

SELECT OBJECT_NAME(I.OBJECT_ID) AS TABELA,
              I.NAME AS INDICE,
              COUNT(*) AS QTDE_COLUMNS_IDX,
	          (SELECT COUNT(1)
	             FROM SYS.COLUMNS C
	       	 WHERE C.OBJECT_ID = I.OBJECT_ID) AS QTDE_COLUMNS_TBL
         FROM SYS.INDEXES I
              INNER JOIN SYS.INDEX_COLUMNS IC
                         INNER JOIN SYS.COLUMNS C
                                 ON C.OBJECT_ID = IC.OBJECT_ID
                                AND C.COLUMN_ID = IC.COLUMN_ID
                      ON I.INDEX_ID  = IC.INDEX_ID
                     AND I.OBJECT_ID = IC.OBJECT_ID
        GROUP BY I.NAME,
                 I.OBJECT_ID
        ORDER BY 3 DESC
       GO

Os scripts que estou compartilhando foram fornecidos por um colega de trabalho Marcus Vinicius que recentemente trabalhou em um projeto para aumentar o espaço livre no banco de dados SQL Server e deixou que eu compartilhasse com vocês.

Aproveitem!

Grande abraço!

Aumentar o espaço livre no seu banco de dados SQL Server.
The following two tabs change content below.

Wesley Mota

DBA SQL Server
Profissional graduado em Banco de Dados e Sistemas de Informação com mais de 7 anos de experiência em empresas de software. Certificado MCSA Microsoft SQL Server possui intensa vivência em administração de banco de dados, Tunning, Performance SQL Server, levantamento de melhorias e monitoramento de banco de dados e servidores SQL Server. Consultoria SQL Server em diversos clientes no Brasil e ao redor do mundo. Escritor no blog dbasqlserverbr.com.br/blog. Onde compartilha conhecimento, experiências e dicas de performance para DBAs SQL Server. Conhecimentos em Oracle e ambientes de alta disponibilidade. Desenvolvimento de softwares web e mobile.Gerenciamento de equipe e projetos.

Latest posts by Wesley Mota (see all)

Wesley Mota

Profissional graduado em Banco de Dados e Sistemas de Informação com mais de 7 anos de experiência em empresas de software. Certificado MCSA Microsoft SQL Server possui intensa vivência em administração de banco de dados, Tunning, Performance SQL Server, levantamento de melhorias e monitoramento de banco de dados e servidores SQL Server. Consultoria SQL Server em diversos clientes no Brasil e ao redor do mundo. Escritor no blog dbasqlserverbr.com.br/blog. Onde compartilha conhecimento, experiências e dicas de performance para DBAs SQL Server. Conhecimentos em Oracle e ambientes de alta disponibilidade. Desenvolvimento de softwares web e mobile.Gerenciamento de equipe e projetos.

Share
Published by
Wesley Mota

Recent Posts

Free Blackjack No Download: Appreciate Blackjack Anytime, Anywhere

Blackjack, additionally known as twenty-one, is just one of one of the most popular gambling…

3 meses ago

The Ultimate Guide to Gry Online Ruletka

If you are a fan of online gambling, then you must have come across gry…

3 meses ago

Discover the Adventures of Free Spins at Online Casino Sites

On the internet online casinos have transformed the betting industry, enabling players to vegas.hu online…

10 meses ago

Best Free Spins No Deposit

Casinos online offer free spins to draw new customers. These bonuses are usually very profitable,…

10 meses ago

Ideal Online Port Gambling Enterprises: An Overview to Locating the Perfect Pc Gaming Experience

In recent times, online casino sites have actually obtained enormous appeal among gamers, providing a…

10 meses ago

Best Online Casinos That Accept Bitcoin Down Payments

Bitcoin, the most preferred cryptocurrency worldwide, has reinvented lots of industries, including the on baixar…

10 meses ago