다음을 통해 공유


CHECKPOINT(Transact-SQL)

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance

현재 연결된 SQL Server 데이터베이스에 수동 검사점을 생성합니다.

참고

데이터베이스 검사점의 여러 유형과 일반적인 검사점 작업에 대한 자세한 내용은 데이터베이스 검사점(SQL Server)을 참조하세요.

Transact-SQL 구문 표기 규칙

구문

CHECKPOINT [ checkpoint_duration ]  

인수

checkpoint_duration
수동 검사점을 완료하기 위해 요청된 시간(초)을 지정합니다. checkpoint_duration을 지정하면 SQL Server 데이터베이스 엔진에서 요청된 기간 내에 검사점을 수행하려고 시도합니다. checkpoint_durationint 형식의 식이어야 하며 0보다 커야 합니다. 이 매개 변수를 생략하면 데이터베이스 엔진에서 검사점 기간을 조정하여 데이터베이스 애플리케이션의 성능에 미치는 영향을 최소화합니다. checkpoint_duration은 고급 옵션입니다.

검사점 작업 기간에 영향을 주는 요인

일반적으로 검사점 작업에 필요한 시간은 기록해야 할 더티 페이지 수에 따라 증가합니다. 다른 애플리케이션의 성능에 미치는 영향을 최소화하기 위해 기본적으로 SQL Server에서는 검사점 작업이 기록하는 빈도를 조정합니다. 기록 빈도를 줄이면 검사점 작업을 완료하는 데 필요한 시간이 늘어납니다. CHECKPOINT 명령에 checkpoint_duration 값이 지정되지 않으면 SQL Server에서 수동 검사점에 대해 이 전략을 사용합니다.

checkpoint_duration을 사용하는 경우 성능에 미치는 영향은 더티 페이지 수, 시스템 작업 및 지정한 실제 기간에 따라 다릅니다. 예를 들어 검사점이 120초 내에 정상적으로 완료되는 경우 checkpoint_duration을 45초로 설정하면 SQL Server에서 기본적으로 할당된 리소스보다 더 많은 리소스를 검사점에 할당하게 됩니다. 이와 반대로, checkpoint_duration을 180초로 설정하면 SQL Server에서 기본적으로 할당된 리소스보다 더 적은 리소스를 검사점에 할당하게 됩니다. 일반적으로 checkpoint_duration을 짧게 설정하면 검사점에 할당되는 리소스가 증가하고, checkpoint_duration을 길게 설정하면 검사점에 할당되는 리소스가 감소합니다. SQL Server에서는 가능하면 항상 검사점을 완료하며 CHECKPOINT 문은 검사점이 완료되는 즉시 반환됩니다. 그러므로 지정한 기간보다 빨리 검사점이 완료되거나 지정한 기간보다 오래 실행될 수 있습니다.

보안

사용 권한

CHECKPOINT 권한은 sysadmin 고정 서버 역할과 db_ownerdb_backupoperator 고정 데이터베이스 역할의 구성원이 기본값이며 전송할 수 없습니다.

참고 항목

ALTER DATABASE(Transact-SQL)
데이터베이스 검사점(SQL Server)
복구 간격 서버 구성 옵션 구성
SHUTDOWN(Transact-SQL)