Cómo monitorear el tamaño y crecimiento de archivos en SQL Server
Un disco lleno detiene la base de datos por completo. Aqui consultas el tamano actual, el espacio usado y libre de cada archivo de datos y de log.
- 1
Tamano y espacio libre por archivo
sys.database_files muestra cada archivo (.mdf, .ndf, .ldf), su tamano y el espacio usado internamente. El tamano esta en paginas de 8 KB.
SELECT name AS archivo, type_desc, size * 8 / 1024 AS tamano_mb, FILEPROPERTY(name, 'SpaceUsed') * 8 / 1024 AS usado_mb, (size - FILEPROPERTY(name, 'SpaceUsed')) * 8 / 1024 AS libre_mb FROM sys.database_files; - 2
Uso a nivel de servidor (todas las bases)
Recorre todas las bases para tener el panorama completo del espacio ocupado en la instancia.
EXEC sp_MSforeachdb ' USE [?]; SELECT DB_NAME() AS base, name, size * 8 / 1024 AS tamano_mb FROM sys.database_files;'; - 3
Revisa la configuracion de autocrecimiento
El autogrowth por porcentaje o en incrementos pequenos causa fragmentacion y pausas. Prefiere un tamano fijo razonable (ej. 512 MB o 1 GB).
SELECT name, type_desc, CASE is_percent_growth WHEN 1 THEN CAST(growth AS varchar) + ' %' ELSE CAST(growth * 8 / 1024 AS varchar) + ' MB' END AS crecimiento, max_size FROM sys.database_files; - 4
Vigila tempdb aparte
tempdb es compartido por todas las cargas y puede crecer sin control. Monitorea su uso con la DMV especifica.
SELECT SUM(unallocated_extent_page_count) * 8 / 1024 AS libre_mb, SUM(user_object_reserved_page_count) * 8 / 1024 AS obj_usuario_mb FROM tempdb.sys.dm_db_file_space_usage;
// el error común
Achicar archivos con DBCC SHRINKFILE fragmenta los indices y suele ser contraproducente: no lo uses de rutina. Un log que no para de crecer casi siempre significa que faltan respaldos de log en modelo FULL. El autogrowth por porcentaje es una trampa: en archivos grandes cada crecimiento es enorme.
// cuándo conviene un experto
Si el espacio se te sale de control o el log crece sin razon aparente, suele haber un problema de configuracion de fondo. En dba.mx dejamos el manejo de espacio, autogrowth y monitoreo con alertas, con techo cerrado.
Agenda un Escaneo — desde USD $550Esta guía es orientativa y usa comandos de referencia. En producción, adapta a tu versión y prueba en un ambiente seguro primero.