Eliminación de errores del modelo de recuperación: opción de configuración del servidor

Se aplica a: Azure SQL Managed Instance

Los modelos de recuperación de SQL Server controlan el mantenimiento del registro de transacciones. El modelo de recuperación completa garantiza que no se pierda trabajo por culpa de un archivo de datos extraviado o dañado, y admite la recuperación a un momento dado en el tiempo dentro de la directiva de retención de copias de seguridad. El modelo de recuperación completa es un valor predeterminado y el único modelo de recuperación compatible con SQL Managed Instance. Los intentos de cambiar el modelo de recuperación en SQL Managed Instance devolverán un mensaje de error.

Use la opción de configuración avanzada suppress recovery model errors para especificar si los comandos para cambiar el modelo de recuperación de base de datos, ejecutados en SQL Managed Instance, devolverán errores o solo advertencias. Cuando esta opción se establece en 1 (ON) en SQL Managed Instance, la ejecución del comando ALTER DATABASE SET RECOVERY no cambiará el modelo de recuperación de la base de datos, y no devolverá un mensaje de error, sino de advertencia. Cuando esta opción se establece en 0 (desactivada) en SQL Managed Instance, la ejecución del comando ALTER DATABASE SET RECOVERY devolverá un mensaje de error.

La opción suppress recovery model errors es útil en los casos en los que las aplicaciones heredadas o de terceros intentan cambiar el modelo de recuperación a registro simple o masivo, aunque no sea un requisito crítico ni obligatorio. Cuando el cambio del modelo de recuperación es lo único que nos impide usar SQL Managed Instance, activar la opción de configuración suppress recovery model errors elimina ese impedimento. Esta opción es especialmente útil cuando no es factible ni asequible cambiar el código de aplicación mediante una solución alternativa.

Ejemplos

En el ejemplo siguiente se habilita la supresión de mensajes de error relacionados con el cambio del modelo de recuperación de base de datos y, después, se ejecuta el comando para cambiar el modelo de recuperación de base de datos y devolver solo la advertencia. El modelo de recuperación no se cambia realmente. Asegúrese de reemplazar my_database por el nombre real de la base de datos.

-- Turn advanced configuration options on:
sp_configure 'show advanced options', 1 ;  
GO
RECONFIGURE ;  
GO

-- Enable suppression of error messages for recovery model change:
sp_configure 'suppress recovery model errors', 1 ;  
GO
RECONFIGURE ;  
GO

-- Execute command for changing recovery model to Simple:
ALTER DATABASE my_database SET RECOVERY SIMPLE;
GO

Consulte también

Opciones de configuración de servidor (SQL Server)

sp_configure (Transact-SQL)

RECONFIGURE (Transact-SQL)