sys.database_query_store_options(Transact-SQL)
적용 대상: Microsoft Fabric의 SQL Server 2016(13.x) 이상 버전 Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics SQL 데이터베이스
이 데이터베이스에 대한 쿼리 저장소 옵션을 반환합니다.
열 이름 | 데이터 형식 | 설명 |
---|---|---|
desired_state |
smallint | 사용자가 명시적으로 설정한 쿼리 저장소 원하는 작업 모드를 나타냅니다.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 4 = READ_CAPTURE_SECONDARY |
desired_state_desc |
nvarchar(60) | 쿼리 저장소 원하는 작업 모드에 대한 텍스트 설명:OFF READ_ONLY READ_WRITE READ_CAPTURE_SECONDARY |
actual_state |
smallint | 쿼리 저장소 작업 모드를 나타냅니다. 사용자가 요구하는 원하는 상태 목록 외에도 실제 상태는 오류 상태일 수 있습니다.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 3 = ERROR 4 = READ_CAPTURE_SECONDARY |
actual_state_desc |
nvarchar(60) | 쿼리 저장소 실제 작업 모드에 대한 텍스트 설명입니다.OFF READ_ONLY READ_WRITE ERROR READ_CAPTURE_SECONDARY 실제 상태가 원하는 상태와 다른 경우가 있습니다. - 데이터베이스가 읽기 전용 모드로 설정되었거나 쿼리 저장소 크기가 구성된 할당량을 초과하는 경우 읽기-쓰기를 지정하더라도 쿼리 저장소 읽기 전용 모드로 작동할 수 있습니다. - 극단적인 시나리오에서는 내부 오류로 인해 쿼리 저장소 오류 상태가 될 수 있습니다. SQL Server 2017(14.x) 이상 버전에서 이 경우 영향을 받는 데이터베이스에서 저장 프로시저를 실행하여 sp_query_store_consistency_check 쿼리 저장소 복구할 수 있습니다. 실행 sp_query_store_consistency_check 이 작동하지 않거나 SQL Server 2016(13.x)을 사용하는 경우 실행하여 데이터를 지워야 합니다. ALTER DATABASE [YourDatabaseName] SET QUERY_STORE CLEAR ALL; |
readonly_reason |
int | desired_state_desc is READ_WRITE 와 actual_state_desc is이 readonly_reason READ_ONLY 면 비트 맵을 반환하여 쿼리 저장소 읽기 전용 모드인 이유를 나타냅니다.1 - 데이터베이스가 읽기 전용 모드에 있습니다.2 - 데이터베이스가 단일 사용자 모드에 있습니다.4 - 데이터베이스가 긴급 모드에 있습니다.8 - 데이터베이스는 보조 복제본입니다(가용성 그룹 및 Azure SQL Database 지역 복제에 적용됨). 이 값은 보조 복제본에서 readable 만 효과적으로 관찰할 수 있습니다.65536 - 쿼리 저장소 옵션에 의해 설정된 크기 제한에 도달했습니다max_storage_size_mb . 이 옵션에 대한 자세한 내용은 ALTER DATABASE SET 옵션을 참조 하세요.131072 - 쿼리 저장소 다른 문의 수가 내부 메모리 제한에 도달했습니다. 필요하지 않은 쿼리를 제거하거나 더 높은 서비스 계층으로 업그레이드하여 읽기/쓰기 모드로 쿼리 저장소 전송할 수 있도록 하는 것이 좋습니다.262144 - 디스크에서 유지되기를 기다리는 메모리 내 항목의 크기가 내부 메모리 제한에 도달했습니다. 쿼리 저장소 메모리 내 항목이 디스크에 유지될 때까지 일시적으로 읽기 전용 모드입니다.524288 - 데이터베이스가 디스크 크기 제한에 도달했습니다. 쿼리 저장소 사용자 데이터베이스의 일부이므로 데이터베이스에 사용할 수 있는 공간이 더 이상 없으면 쿼리 저장소 더 이상 확장할 수 없습니다.쿼리 저장소 작업 모드를 다시 읽기-쓰기로 전환하려면 쿼리 저장소 쿼리 데이터를 지속적으로 수집하는지 확인을 참조하세요. |
current_storage_size_mb |
bigint | 디스크의 쿼리 저장소 크기(메가바이트)입니다. |
flush_interval_seconds |
bigint | 쿼리 저장소 데이터를 디스크에 정기적으로 플러시하는 기간(초)입니다. 기본값은 15분입니다 900 .문을 사용하여 변경합니다 ALTER DATABASE <database> SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = <interval>) . |
interval_length_minutes |
bigint | 통계 집계 간격(분)입니다. 임의 값은 허용되지 않습니다. 다음 값1 , , , 10 5 , 60 15 30 및 1440 분 중 하나를 사용합니다. 기본값은 60분입니다. |
max_storage_size_mb |
bigint | 쿼리 저장소 최대 디스크 크기(MB)입니다. 기본값은 SQL Server 2017(14.x)까지 100MB, SQL Server 2019(15.x) 이상 버전에서는 1GB입니다. SQL Database Premium Edition의 경우 기본값은 1GB이고 SQL Database Basic 버전의 경우 기본값은 10MB입니다. 문을 사용하여 변경합니다 ALTER DATABASE <database> SET QUERY_STORE (MAX_STORAGE_SIZE_MB = <size>) . |
stale_query_threshold_days |
bigint | 쿼리 정보가 쿼리 저장소 유지되는 일 수입니다. 기본값은 30 여야 합니다. 0 보존 정책을 사용하지 않도록 설정합니다.SQL Database Basic 버전의 경우 기본값은 7일입니다. 문을 사용하여 변경합니다 ALTER DATABASE <database> SET QUERY_STORE (CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = <value>)) . |
max_plans_per_query |
bigint | 저장된 계획의 최대 수를 제한합니다. 기본값은 200 여야 합니다. 최대값에 도달하면 쿼리 저장소 해당 쿼리에 대한 새 계획 캡처를 중지합니다. 캡처된 계획 수에 대한 제한을 제거하도록 0 설정합니다.문을 사용하여 변경합니다 ALTER DATABASE<database> SET QUERY_STORE (MAX_PLANS_PER_QUERY = <n>) . |
query_capture_mode |
smallint | 현재 활성 쿼리 캡처 모드:1 = ALL - 모든 쿼리가 캡처됩니다. SQL Server 2016(13.x) 이상 버전의 기본 구성 값입니다.2 = AUTO - 실행 수 및 리소스 사용량을 기반으로 관련 쿼리를 캡처합니다. SQL Database의 기본 구성 값입니다.3 = NONE - 새 쿼리 캡처를 중지합니다. 쿼리 저장소 이미 캡처된 쿼리에 대한 컴파일 및 런타임 통계를 계속 수집합니다. 중요한 쿼리 캡처를 놓칠 수 있으므로 이 구성을 신중하게 사용합니다.4 = CUSTOM - QUERY_CAPTURE_POLICY 옵션을 사용하여 쿼리 캡처 정책을 더 자세히 제어할 수 있습니다.적용 대상: SQL Server 2019(15.x) 이상 버전 |
query_capture_mode_desc |
nvarchar(60) | 쿼리 저장소 실제 캡처 모드에 대한 텍스트 설명:ALL (SQL Server 2016(13.x) 이상 버전에 대한 기본값)AUTO (SQL Database의 기본값)NONE CUSTOM |
capture_policy_execution_count |
int | 쿼리 캡처 모드 CUSTOM 정책 옵션입니다. 평가 기간 동안 쿼리가 실행되는 횟수를 정의합니다. 기본값은 30 입니다.적용 대상: SQL Server 2019(15.x) 이상 버전 |
capture_policy_total_compile_cpu_time_ms |
bigint | 쿼리 캡처 모드 CUSTOM 정책 옵션입니다. 평가 기간 동안 쿼리에 사용하는 총 경과 컴파일 CPU 시간을 정의합니다. 기본값은 1000입니다.적용 대상: SQL Server 2019(15.x) 이상 버전 |
capture_policy_total_execution_cpu_time_ms |
bigint | 쿼리 캡처 모드 CUSTOM 정책 옵션입니다. 평가 기간 동안 쿼리에 사용하는 총 경과 실행 CPU 시간을 정의합니다. 기본값은 100 입니다.적용 대상: SQL Server 2019(15.x) 이상 버전 |
capture_policy_stale_threshold_hours |
int | 쿼리 캡처 모드 CUSTOM 정책 옵션입니다. 쿼리가 캡처되어야 하는지 여부를 결정하는 평가 간격 기간을 정의합니다. 기본값은 24시간입니다.적용 대상: SQL Server 2019(15.x) 이상 버전 |
size_based_cleanup_mode |
smallint | 총 데이터 양이 최대 크기에 가까워지면 정리가 자동으로 활성화되는지 여부를 제어합니다.0 = OFF - 크기 기반 정리가 자동으로 활성화되지 않습니다.1 = AUTO - 디스크의 크기가 90%에 max_storage_size_mb 도달하면 크기 기반 정리가 자동으로 활성화됩니다. 이것은 기본 구성 값입니다.크기 기반 정리는 가장 저렴하고 가장 오래된 쿼리를 먼저 제거합니다. 약 80%에 max_storage_size_mb 도달하면 중지됩니다. |
size_based_cleanup_mode_desc |
nvarchar(60) | 쿼리 저장소 실제 크기 기반 정리 모드에 대한 텍스트 설명:OFF AUTO (기본값) |
wait_stats_capture_mode |
smallint | 쿼리 저장소 대기 통계 캡처를 수행하는지 여부를 제어합니다.0 = OFF 1 = ON 적용 대상: SQL Server 2017(14.x) 이상 버전 |
wait_stats_capture_mode_desc |
nvarchar(60) | 실제 대기 통계 캡처 모드에 대한 텍스트 설명:OFF ON (기본값)적용 대상: SQL Server 2017(14.x) 이상 버전 |
actual_state_additional_info |
nvarchar(4000) | 현재 사용되지 않습니다. |
사용 권한
VIEW DATABASE STATE
권한이 필요합니다.
설명
actual_state_desc
READ_CAPTURE_SECONDARY
값은 보조 복제본에 대한 쿼리 저장소 사용하도록 설정된 경우의 예상 상태입니다. 자세한 내용은 보조 복제본을 위한 쿼리 저장소를 참조하세요.
관련 콘텐츠
- sys.query_context_settings(Transact-SQL)
- sys.query_store_plan(Transact-SQL)
- sys.query_store_query(Transact-SQL)
- sys.query_store_query_text(Transact-SQL)
- sys.query_store_runtime_stats(Transact-SQL)
- sys.query_store_wait_stats(Transact-SQL)
- sys.query_store_runtime_stats_interval(Transact-SQL)
- 쿼리 저장소를 사용한 성능 모니터링
- 시스템 카탈로그 뷰(Transact-SQL)
- sys.fn_stmt_sql_handle_from_sql_stmt(Transact-SQL)
- 쿼리 저장소 저장 프로시저(Transact-SQL)