다음을 통해 공유


서버 구성: ADR 클리너 재시도 시간 제한(분)

적용 대상:SQL Server

SQL Server 2019(15.x)부터 이 구성 설정은 ADR(가속 데이터베이스 복구)에 사용됩니다. 클리너는 불필요한 페이지 버전을 정리하기 위해 주기적으로 활성화되는 비동기 프로세스입니다.

경우에 따라 청소기가 스윕 중에 사용자 워크로드와의 충돌로 인해 개체 수준 잠금을 획득하는 동안 문제가 발생할 수 있습니다. 클리너는 별도의 목록에서 이러한 페이지를 추적합니다. ADR cleaner retry timeout (min) 청소기가 스윕을 중단하기 전에 개체 잠금 획득 및 페이지 정리를 독점적으로 다시 시도하는 데 소요되는 시간을 제어합니다. 중단된 트랜잭션 맵에서 중단된 트랜잭션의 증가를 억제하려면 100개의% 성공으로 스윕을 완료하는 것이 필수적입니다. 별도의 목록의 페이지를 지정된 시간 제한 시간에 정리할 수 없는 경우 현재 스윕이 중단되고 다음 스윕 중에 정리가 시도됩니다.

버전 Default value
SQL Server 2019 (15.x) 120
SQL Server 2022(16.x) 이상 버전 15

설명

클리너는 SQL Server 2019(15.x)의 단일 스레드입니다. SQL Server 2022(16.x)에서 클리너는 기본적으로 단일 스레드이지만 ADR Cleaner Thread Count 서버 구성을 구성하여 다중 스레드로 만들 수 있습니다.

클리너가 단일 스레드인 경우 한 번에 하나의 데이터베이스에서만 작동할 수 있습니다. 인스턴스에 ADR을 사용하는 데이터베이스가 두 개 이상 있는 경우 시간 제한을 큰 값으로 늘리지 마세요. 그럴 경우 다른 데이터베이스에서 다시 시도하는 동안, 특정 데이터베이스에서 정리 작업이 지연될 수 있습니다.

알려진 문제

SQL Server 2019(15.x) CU 12 및 이전 버전의 경우, 이 값을 0으로 설정할 수 있습니다. 이 문서의 예를 사용하여 설계된 기본값인 값 120으로 수동으로 초기화하는 것이 좋습니다.

예시

다음 예에서는 클리너 다시 시도 시간 제한을 기본값으로 설정합니다.

EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
EXEC sp_configure 'ADR cleaner retry timeout', 120;
RECONFIGURE;
GO

예시

다음 예에서는 클리너 다시 시도 시간 제한을 기본값으로 설정합니다.

EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
EXEC sp_configure 'ADR cleaner retry timeout', 15;
RECONFIGURE;
GO