다음을 통해 공유


서버 구성: 복구 모델 오류 표시 안 함

적용 대상:Azure SQL Managed Instance

SQL Server 복구 모델은 트랜잭션 로그 유지 관리를 제어합니다. 전체 복구 모델은 손실되거나 손상된 데이터 파일로 인해 작업이 손실되지 않도록 하고 백업 보존 정책 내의 임의 시점으로 복구를 지원합니다. 전체 복구 모델은 Azure SQL Managed Instance에서 지원되는 기본 및 유일한 복구 모델입니다. SQL Managed Instance에서 복구 모델을 변경하려고 시도하면 오류 메시지가 반환됩니다.

Azure SQL Managed Instance에서 고급 구성 옵션을 사용하여 suppress recovery model errors 데이터베이스 복구 모델을 변경하는 명령이 오류를 반환할지 또는 경고만 반환할지 지정할 수 있습니다. 이 옵션을 사용하도록 설정 1 하면 명령을 ALTER DATABASE SET RECOVERY 실행해도 데이터베이스의 복구 모델이 변경되지 않으며 오류 메시지 대신 경고 메시지가 반환됩니다. 이 옵션을 사용하지 않도록 설정 0 하면 명령을 ALTER DATABASE SET RECOVERY 실행하면 오류 메시지가 반환됩니다.

suppress recovery model errors 옵션은 레거시 또는 타사 애플리케이션이 중요하거나 필수 요구 사항이 아니더라도 복구 모델을 단순 또는 대량 로그로 변경하려는 경우에 유용합니다. 복구 모델 변경이 SQL Managed Instance를 사용하기 위한 유일한 차단기인 경우 구성 옵션을 켜 suppress recovery model errors 면 해당 차단기가 제거됩니다. 이 옵션은 애플리케이션 코드를 변경하는 대체 솔루션이 실현 가능하지 않거나 저렴하지 않은 경우에 특히 유용합니다.

예제

다음 예제에서는 데이터베이스 복구 모델 변경과 관련된 오류 메시지를 표시하지 않고 데이터베이스 복구 모델을 변경하고 경고만 반환하는 명령을 실행합니다. 복구 모델은 실제로 변경되지 않습니다. 실제 데이터베이스 이름으로 바꿉다 <database> .

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

RECONFIGURE;
GO

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

RECONFIGURE;
GO

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