El monitor supervisa el espacio disponible en todos los archivos de registro de transacción de la base de datos y en los medios relacionados. El espacio disponible en el medio que hospeda los archivos de registro de transacción solo se incluye como parte del espacio disponible si el crecimiento automático está habilitado al menos para uno de los archivos de registro de transacción. Este monitor es un monitor de dependencia (acumulación).
Nota: este monitor es un monitor de dependencia (acumulación). Su estado de mantenimiento se determina por el mejor estado de cualquier monitor miembro. Revise también el artículo de Knowledge Base para obtener información sobre los monitores de unidad relacionados.
El monitor supervisa el espacio disponible en todos los archivos de registro de transacción de la base de datos y en los medios relacionados. El espacio disponible en el medio que hospeda los archivos de registro solo se incluye como parte del espacio disponible si el crecimiento automático está habilitado al menos para uno de los archivos. Este monitor es un monitor de dependencia (acumulación).
Si hay poco espacio disponible en todos los archivos de registro, se genera un estado incorrecto. El poco espacio disponible se puede deber a:
Valores de configuración de archivo no adecuados (tamaño, tamaño máximo, crecimiento automático, etc.)
Espacio no adecuado restante en el medio
Ausencia de copias de seguridad periódicas.
El registro no se trunca.
Este monitor agrega el espacio disponible para cada archivo de registro de una base de datos según su configuración:
Sin crecimiento automático
Para un archivo que no esté configurado para el crecimiento automático, el espacio disponible será la diferencia entre el tamaño del archivo y el espacio usado (el tamaño de los datos almacenados en el archivo).
Crecimiento automático habilitado
Con el crecimiento automático habilitado, el espacio en disco disponible se incluye como parte del espacio disponible. Además de la diferencia entre el tamaño de archivo y el espacio usado, el espacio disponible para los archivos con crecimiento automático habilitado también incluye el espacio libre en el medio (pero no es superior a la diferencia entre el tamaño máximo del archivo y el tamaño actual del archivo).
El poco espacio disponible para los archivos de base de datos que tienen crecimiento automático puede significar que el archivo se acerca a los límites de la unidad lógica de hospedaje. En el caso de los archivos que tienen habilitado el crecimiento automático con un tamaño máximo, el poco espacio disponible también puede significar que el archivo se acerca al tamaño máximo especificado para él.
Además, en los cálculos de espacio disponible se tiene en cuenta que el archivo también puede dejar de crecer si el paso de crecimiento del archivo (en MB o %) es superior al espacio libre disponible en el medio. Lo mismo ocurre con los archivos cuyo crecimiento está limitado por un valor de tamaño máximo. En estas situaciones, el espacio libre disponible que queda en el disco no se incluye como parte del espacio disponible porque el archivo no se puede expandir más.
Para solucionar este problema puede:
Aumentar el tamaño asignado a los archivos de registro si el crecimiento automático está deshabilitado.
Aumentar el valor de tamaño máximo para un archivo de registro si el crecimiento automático está habilitado.
Habilitar el crecimiento automático para un archivo como mínimo.
Mover los archivos de registro a otra unidad con más espacio disponible si el espacio de crecimiento es limitado.
Realizar copias de seguridad periódicas de los archivos de registro para los modos de recuperación FULL y BULK-LOGGED.
Investigar el motivo por el que no se trunca el registro:
Transacciones activas de ejecución prolongada abiertas
Operaciones de copia de seguridad de ejecución prolongada
Transacción replicada abierta durante mucho tiempo (replicación transaccional)
Retraso de reflejo con respecto al servidor principal (creación de reflejo de la base de datos)
Modificar los umbrales de los monitores de unidad relacionados para que se adapten a la carga de trabajo.
Por otro lado, si el espacio disponible de los archivos de registro no constituye un problema para la base de datos:
Deshabilite este monitor para esta base de datos específica o para todas las bases de datos.
Vea los Libros en pantalla de SQL Server: Arquitectura de archivos y grupos de archivos.
Nombre | Descripción | Valor predeterminado |
Prioridad de alerta | Define la prioridad de la alerta. | Normal |
Gravedad de alerta | Define la gravedad de la alerta. | MatchMonitorHealth |
Habilitado | Habilita o deshabilita el flujo de trabajo. | Sí |
Genera alertas | Define si el flujo de trabajo genera una alerta. | Sí |
Target | Microsoft.SQLServer.2016.Database | ||
Parent Monitor | Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitor | ||
Algorithm | BestOf | ||
Source Monitor | Microsoft.SQLServer.2016.Monitoring.DBLogFileSpaceMonitor | ||
Relationship | Microsoft.SQLServer.2016.DBHostsLogFile | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
|
<DependencyMonitor ID="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitorRollUp" Accessibility="Public" Enabled="true" Target="SQL2016Core!Microsoft.SQLServer.2016.Database" ParentMonitorID="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitor" Remotable="true" Priority="Normal" RelationshipType="SQL2016Core!Microsoft.SQLServer.2016.DBHostsLogFile" MemberMonitor="Microsoft.SQLServer.2016.Monitoring.DBLogFileSpaceMonitor">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitorRollUp.AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<Algorithm>BestOf</Algorithm>
<MemberUnAvailable>Error</MemberUnAvailable>
</DependencyMonitor>