Configuración de reducción automática

Microsoft.SQLServer.2008.Database.Configuration.AutoShrink (UnitMonitor)

Supervisa la configuración de reducción automática de la base de datos.

Knowledge Base article:

Resumen

Este monitor comprueba el valor de configuración Reducir automáticamente de esta base de datos. Debido a que este monitor forma parte de un requisito de estándares globales, se generará una alerta si la configuración no cumple el estándar especificado.

Configuración

Si la configuración de estadísticas Reducir automáticamente se establece en ON, los archivos de las bases de datos se pueden reducir periódicamente. Pueden reducirse automáticamente los archivos de datos y los archivos de registro. Con Reducir automáticamente se reduce el tamaño del registro de transacciones solo si el modelo de recuperación de la base de datos se establece en SIMPLE o si se realiza una copia de seguridad del registro. Cuando el valor es OFF, los archivos de la base de datos no se reducen de forma automática durante las comprobaciones periódicas del espacio no utilizado. La opción AUTO_SHRINK reduce los archivos cuando no se utiliza más de un 25% del espacio del archivo. El tamaño del archivo se reduce hasta un tamaño en el que el 25% del archivo corresponde al espacio sin utilizar o hasta el tamaño que tenía el archivo cuando se creó (el tamaño mayor de los dos). No puede reducir una base de datos de solo lectura.

La reducción automática puede provocar un exceso de fragmentación de índice, tamaño de registro de transacciones y operaciones de E/S. Use la reducción automática únicamente si es probable que la base de datos vuelva a crecer y puede hacerlo con ALTER INDEX … REORGANIZE después de la operación de reducción.

AUTO_SHRINK {ON | OFF}

Causas

Si la opción no coincide con la configuración necesaria, se generará una alerta de advertencia. De fábrica, este monitor está configurado para generar una alerta cuando este valor de configuración se establezca en “ON”.

Soluciones

Para solucionar este problema puede:

Por otro lado, si este monitor no constituye un problema para la base de datos:

Externo

Vea información más detallada acerca de esta configuración: Opciones de ALTER DATABASE SET (Transact-SQL)

Element properties:

TargetMicrosoft.SQLServer.2008.Database
Parent MonitorMicrosoft.SQLServer.2008.Database.AutomaticConfiguration
CategoryConfigurationHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2008.DBConfigurationStatus
RemotableTrue
AccessibilityPublic
Alert Message
Error de configuración de reducción automática
La configuración de reducción automática de la base de datos "{0}" en la instancia de SQL "{1}" del equipo "{2}" no está establecida según el procedimiento recomendado.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2008.Database.Configuration.AutoShrink" Accessibility="Public" Enabled="false" Target="SQL2008Core!Microsoft.SQLServer.2008.Database" ParentMonitorID="Microsoft.SQLServer.2008.Database.AutomaticConfiguration" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2008.DBConfigurationStatus" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.Database.Configuration.AutoShrink.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ConfigurationValueOK" MonitorTypeStateID="ConfigurationValueOK" HealthState="Success"/>
<OperationalState ID="ConfigurationValueNotOK" MonitorTypeStateID="ConfigurationValueNotOK" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ConnectionString>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ConnectionString$</ConnectionString>
<DatabaseName>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</DatabaseName>
<IntervalSeconds>43200</IntervalSeconds>
<SyncTime/>
<ConfigValue>AutoShrink</ConfigValue>
<ExpectedValue>OFF</ExpectedValue>
<ExcludeOnExpress>false</ExcludeOnExpress>
<SQLSKU>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/Edition$</SQLSKU>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>