EMRQDATA / GUIA OPERACIONAL
SQL Server Capacity & Growth Analyzer
Guia de coleta, importação e interpretação dos resultados.
1. Coleta
- Abra a ferramenta e clique em Baixar consulta SQL.
- Execute o script em cada instância SQL Server com permissões para consultar sys.master_files e sys.dm_os_volume_stats.
- Exporte o resultado completo para CSV, mantendo os cabeçalhos.
- Importe o CSV. Para consolidar múltiplas instâncias, una os resultados em um CSV único mantendo a mesma estrutura.
2. Colunas
- size_gb: tamanho provisionado do arquivo.
- used_gb: opcional. A consulta consolidada deixa este campo vazio para evitar leitura incorreta de FILEPROPERTY fora do contexto de cada banco. Preencha com uma coleta específica por database quando precisar do espaço utilizado; para arquivos LOG, use métricas próprias de uso do log.
- growth_gb_month: campo opcional para crescimento líquido mensal observado. A consulta fornece apenas uma estimativa derivada da configuração de autogrowth; substitua por histórico real sempre que possível.
- volume_total_gb / volume_free_gb: capacidade e espaço livre do volume no instante da coleta.
- volume_mount: ponto de montagem usado para agrupar arquivos no volume.
3. Projeção
O cálculo projeta crescimento linear para o horizonte selecionado. Arquivos com crescimento preenchido no CSV usam esse valor; quando vazio, usa-se a taxa padrão. O volume soma as taxas dos arquivos associados. O limite de planejamento é a capacidade total menos a reserva definida.
4. Cuidados importantes
- Autogrowth não é uma previsão de crescimento mensal. O valor calculado a partir de growth/size é apenas uma referência de configuração e não deve ser tratado como histórico.
- Para obter crescimento confiável, compare snapshots de espaço utilizado em intervalos regulares (por exemplo, 30 dias) e calcule a variação líquida.
- Arquivos podem estar em volumes distintos e volumes podem conter arquivos de outras aplicações. Não some a capacidade do mesmo volume mais de uma vez no inventário.
- Em versões e configurações diferentes, permissões e disponibilidade de dm_os_volume_stats podem variar. Teste a consulta no ambiente.
- A consulta de inventário não calcula used_gb: FILEPROPERTY depende do contexto do banco atual. Para DATA, faça coleta individual por database; para LOG, use sys.dm_db_log_space_usage em cada banco. O tamanho provisionado e o espaço livre do volume continuam disponíveis na coleta principal.
- A consulta lê metadados; não altera bancos, arquivos ou volumes. Avalie AlwaysOn, backups, TEMPDB, compressão, crescimento de arquivos e janelas de manutenção à parte.
5. SQL de coleta
A consulta pode ser baixada diretamente na ferramenta. Trecho principal:
SELECT d.name AS database, mf.name AS file_name, mf.type_desc AS file_type,
mf.size/128.0/1024 AS size_gb,
CAST(NULL AS decimal(18,2)) AS used_gb,
vs.volume_mount_point, vs.total_bytes, vs.available_bytes
FROM sys.master_files mf
JOIN sys.databases d ON d.database_id=mf.database_id
OUTER APPLY sys.dm_os_volume_stats(mf.database_id,mf.file_id) vs;