sys.database_query_store_options (Transact SQL)sys.database_query_store_options (Transact-SQL)

적용 대상: yes(2016부터 시작) 하는 SQL Server yesAzure SQL Database 예Azure SQL Data Warehouse 없음 병렬 데이터 웨어하우스 APPLIES TO: yesSQL Server (starting with 2016) yesAzure SQL Database yesAzure SQL Data Warehouse noParallel Data Warehouse

이 데이터베이스에 대 한 쿼리 저장소 옵션을 반환 합니다.Returns the Query Store options for this database.

적용 대상: SQL ServerSQL Server (SQL Server 2016(13.x)SQL Server 2016 (13.x) ~ SQL Server 2017SQL Server 2017), SQL DatabaseSQL Database.Applies to: SQL ServerSQL Server ( SQL Server 2016(13.x)SQL Server 2016 (13.x) through SQL Server 2017SQL Server 2017), SQL DatabaseSQL Database.

열 이름Column name 데이터 형식Data type DescriptionDescription
desired_statedesired_state smallintsmallint 사용자가 명시적으로 설정 되는 쿼리 저장소의 원하는 작업 모드를 나타냅니다.Indicates the desired operation mode of Query Store, explicitly set by user.
0 = OFF0 = OFF
1 = READ_ONLY1 = READ_ONLY
2 = READ_WRITE2 = READ_WRITE
desired_state_descdesired_state_desc nvarchar(60)nvarchar(60) 쿼리 저장소의 원하는 작업 모드의 텍스트 설명:Textual description of the desired operation mode of Query Store:
OFFOFF
READ_ONLYREAD_ONLY
READ_WRITEREAD_WRITE
actual_stateactual_state smallintsmallint 쿼리 저장소의 작업 모드를 나타냅니다.Indicates the operation mode of Query Store. 사용자가 필요한 원하는 상태의 목록 외에도 실제 상태는 오류 상태를 수 있습니다.In addition to list of desired states required by the user, actual state can be an error state.
0 = OFF0 = OFF
1 = READ_ONLY1 = READ_ONLY
2 = READ_WRITE2 = READ_WRITE
3 = ERROR3 = ERROR
actual_state_descactual_state_desc nvarchar(60)nvarchar(60) 쿼리 저장소의 실제 작업 모드의 텍스트 설명입니다.Textual description of the actual operation mode of Query Store.
OFFOFF
READ_ONLYREAD_ONLY
READ_WRITEREAD_WRITE
ERRORERROR

실제 상태가 필요한 상태에서 다른 경우가 있습니다.There are situations when actual state is different from the desired state:
-데이터베이스 읽기 전용 모드로 설정 된 경우, 쿼리 저장소 크기가 구성 된 할당량을 초과 하는 경우 쿼리 저장소는 읽기 / 쓰기 사용자가 지정 된 경우에 읽기 전용 모드에서 작동할 수 있습니다.- If the database is set to read-only mode or if Query Store size exceeds its configured quota, Query Store may operate in read-only mode even if read-write was specified by the user.
-극단적인 시나리오에서 쿼리 저장소 내부 오류로 인해 오류 상태를 입력할 수 있습니다.- In extreme scenarios Query Store can enter an ERROR state because of internal errors. 이 경우 쿼리 저장소를 실행 하 여 복구할 수 있습니다는 sp_query_store_consistency_check 영향을 받는 데이터베이스에서 저장 프로시저입니다.If this happens, Query Store can be recovered by executing the sp_query_store_consistency_check stored procedure in the affected database.
readonly_reasonreadonly_reason intint 경우는 desired_state_desc READ_WRITE입니다와 actual_state_desc READ_ONLY,입니다 readonly_reason 반환 쿼리 저장소에 이유를 나타내려면 매핑할 약간 읽기 전용 모드입니다.When the desired_state_desc is READ_WRITE and the actual_state_desc is READ_ONLY, readonly_reason returns a bit map to indicate why the Query Store is in readonly mode.

1 -데이터베이스가 읽기 전용 모드1 - database is in read-only mode

2 -데이터베이스가 단일 사용자 모드2 - database is in single-user mode

4 -데이터베이스가 응급 모드4 - database is in emergency mode

8 -데이터베이스가 보조 복제본 (Always On에 적용 됩니다 및 Azure SQL 데이터베이스Azure SQL Database 지역에서 복제).8 - database is secondary replica (applies to Always On and Azure SQL 데이터베이스Azure SQL Database geo-replication). 이 값에만 효과적으로 확인할 수 있습니다 읽을 수 있는 보조 복제본This value can be effectively observed only on readable secondary replicas

65536 -쿼리 저장소 MAX_STORAGE_SIZE_MB 옵션으로 설정 된 크기 제한에 도달 했습니다.65536 - the Query Store has reached the size limit set by the MAX_STORAGE_SIZE_MB option.

131072 -쿼리 저장소에서 다른 문 수에는 내부 메모리 제한에 도달 했습니다.131072 - The number of different statements in Query Store has reached the internal memory limit. 필요 하지 않은 쿼리를 제거 하거나 쿼리 저장소를 읽기-쓰기 모드로 전송할 수 있도록 더 높은 서비스 계층으로 업그레이드 하는 것이 좋습니다.Consider removing queries that you do not need or upgrading to a higher service tier to enable transferring Query Store to read-write mode.
적용 대상: Azure SQL 데이터베이스Azure SQL Database을 참조하세요.Applies to: Azure SQL 데이터베이스Azure SQL Database.

262144 -디스크에 유지 하려고 대기 하는 메모리 내 항목의 크기에는 내부 메모리 제한에 도달 했습니다.262144 - Size of in-memory items waiting to be persisted on disk has reached the internal memory limit. 쿼리 저장소 디스크에 유지 되는 메모리 내 항목이 때까지 일시적으로 읽기 전용 모드로 됩니다.Query Store will be in read-only mode temporarily until the in-memory items are persisted on disk.
적용 대상: Azure SQL 데이터베이스Azure SQL Database을 참조하세요.Applies to: Azure SQL 데이터베이스Azure SQL Database.

524288 -데이터베이스에는 디스크 크기 제한에 도달 했습니다.524288 - Database has reached disk size limit. 쿼리 저장소 이므로 사용자 데이터베이스에 포함 하는 것을 의미 하는 데이터베이스에 더 이상 사용 가능한 공간이 쿼리 저장소가 더 커질 수 없습니다 더 이상.Query Store is part of user database, so if there is no more available space for a database, that means that Query Store cannot grow further anymore.
적용 대상: Azure SQL 데이터베이스Azure SQL Database을 참조하세요.Applies to: Azure SQL 데이터베이스Azure SQL Database.

쿼리 저장소 작업을 전환할 모드로 다시 읽기 / 쓰기를 참조 하십시오 확인 쿼리 저장소에서 쿼리 데이터가 계속 수집 부분 쿼리 저장소 모범 사례합니다.To switch the Query Store operations mode back to read-write, see Verify Query Store is Collecting Query Data Continuously section of Best Practice with the Query Store.
current_storage_size_mbcurrent_storage_size_mb bigintbigint 쿼리 저장소의 디스크 크기를 메가바이트에서입니다.Size of Query Store on disk in megabytes.
flush_interval_secondsflush_interval_seconds bigintbigint 일반 쿼리 저장소 데이터를 디스크에 플러시하기 (초)에서에 대 한 기간입니다.The period for regular flushing of Query Store data to disk in seconds. 기본값은 900 (15 분)입니다.Default value is 900 (15 min).

사용 하 여 변경 된 ALTER DATABASE <database> SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = <interval>) 문입니다.Change by using the ALTER DATABASE <database> SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = <interval>) statement.
interval_length_minutesinterval_length_minutes bigintbigint 통계 집계 간격 (분)입니다.The statistics aggregation interval in minutes. 임의의 값이 허용 되지 않습니다.Arbitrary values are not allowed . 다음 중 하나를 사용합니다. 1, 5, 10, 15, 30, 60 및 1440 분.Use one of the following: 1, 5, 10, 15, 30, 60, and 1440 minutes. 기본값은 60 분입니다.The default value is 60 minutes.
max_storage_size_mbmax_storage_size_mb bigintbigint 최대 디스크 크기 (mb)의 쿼리 저장소입니다.Maximum disk size for the Query Store in megabytes (MB). 기본값은 100 MB입니다.Default value is 100 MB.
에 대 한 SQL DatabaseSQL Database Premium edition의 경우 기본값은 1GB 및 SQL DatabaseSQL Database Basic edition의 경우 기본값은 10MB입니다.For SQL DatabaseSQL Database Premium edition, default is 1 GB and for SQL DatabaseSQL Database Basic edition, default is 10 MB.

사용 하 여 변경 된 ALTER DATABASE <database> SET QUERY_STORE (MAX_STORAGE_SIZE_MB = <size>) 문입니다.Change by using the ALTER DATABASE <database> SET QUERY_STORE (MAX_STORAGE_SIZE_MB = <size>) statement.
stale_query_threshold_daysstale_query_threshold_days bigintbigint 정책 설정이 없는지를 사용 하 여 쿼리 하는 일 수는 쿼리 저장소에 보관 됩니다.Number of days that queries with no policy settings are kept in Query Store. 기본값은 30합니다.Default value is 30. 보존 정책을 사용 하지 않으려면 0으로 설정 합니다.Set to 0 to disable the retention policy.
SQL DatabaseSQL Database Basic 버전의 경우 기본값은 7일입니다.For SQL DatabaseSQL Database Basic edition, default is 7 days.

사용 하 여 변경 된 ALTER DATABASE <database> SET QUERY_STORE ( CLEANUP_POLICY = ( STALE_QUERY_THRESHOLD_DAYS = <value> ) ) 문입니다.Change by using the ALTER DATABASE <database> SET QUERY_STORE ( CLEANUP_POLICY = ( STALE_QUERY_THRESHOLD_DAYS = <value> ) ) statement.
max_plans_per_querymax_plans_per_query bigintbigint 저장 된 계획의 최대 수를 제한합니다.Limits the maximum number of stored plans. 기본값은 200합니다.Default value is 200. 최 댓 값에 도달 하는 경우 쿼리 저장소는 쿼리에 대 한 새 계획을 캡처를 중지 합니다.If the maximum value is reached, Query Store stops capturing new plans for that query. 캡처된 계획의 수와 관련 하 여 제한 사항을 제거 하는 0으로 설정 합니다.Setting to 0 removes the limitation with regards to the number of captured plans.

사용 하 여 변경 된 ALTER DATABASE<database> SET QUERY_STORE (MAX_PLANS_PER_QUERY = <n>) 문입니다.Change by using the ALTER DATABASE<database> SET QUERY_STORE (MAX_PLANS_PER_QUERY = <n>) statement.
query_capture_modequery_capture_mode smallintsmallint 현재 활성 쿼리 캡처 모드:The currently active query capture mode:

1 = ALL-모든 쿼리가 캡처됩니다.1 = ALL - all queries are captured. 에 대 한 기본 구성 값을 이것이 SQL ServerSQL Server (SQL Server 2016(13.x)SQL Server 2016 (13.x) 를 통해 SQL Server 2017SQL Server 2017).This is the default configuration value for SQL ServerSQL Server (SQL Server 2016(13.x)SQL Server 2016 (13.x) through SQL Server 2017SQL Server 2017).

2 = AUTO-실행 횟수 및 리소스 사용량을 기준으로 관련 쿼리를 캡처합니다.2 = AUTO - capture relevant queries based on execution count and resource consumption. 이것이 기본 구성 값에 대 한 SQL DatabaseSQL Database합니다.This is the default configuration value for SQL DatabaseSQL Database.

3 = NONE-새 쿼리 캡처가 중지 됩니다.3 = NONE - stop capturing new queries. Query Store는 이미 캡처된 쿼리에 대한 컴파일 및 런타임 통계를 계속 수집합니다.Query Store will continue to collect compile and runtime statistics for queries that were captured already. 중요 한 쿼리 캡처를 놓칠 수 있으므로이 구성을 신중 하 게 사용 합니다.Use this configuration cautiously since you may miss to capture important queries.
query_capture_mode_descquery_capture_mode_desc nvarchar(60)nvarchar(60) 쿼리 저장소 캡처 모드의 텍스트 설명:Textual description of the actual capture mode of Query Store:

모든 (에 대 한 기본 SQL Server 2016(13.x)SQL Server 2016 (13.x))ALL (default for SQL Server 2016(13.x)SQL Server 2016 (13.x))

자동 (기본값 SQL DatabaseSQL Database)AUTO (default for SQL DatabaseSQL Database)

없음NONE
size_based_cleanup_modesize_based_cleanup_mode smallintsmallint 총 데이터 양이 최대 크기에 가까워지면 정리가 자동으로 활성화될지 여부를 제어합니다.Controls whether cleanup will be automatically activated when total amount of data gets close to maximum size:

0 = OFF-크기 기반된 정리를 자동으로 활성화 되지 않습니다.0 = OFF - size based cleanup won't be automatically activated.

1 = AUTO-크기 기반된 정리 자동으로 활성화될지 디스크 크기에 도달할 때 90%max_storage_size_mb합니다.1 = AUTO - size based cleanup will be automatically activated when size on disk reaches 90 percent of max_storage_size_mb. 이것은 기본 구성 값입니다.This is the default configuration value.

크기 기반 정리는 가장 저렴하고 가장 오래된 쿼리를 먼저 제거합니다.Size based cleanup removes the least expensive and oldest queries first. 약 중지 되기 80%max_storage_size_mb 에 도달 합니다.It stops when approximately 80 percent of max_storage_size_mb is reached.
size_based_cleanup_mode_descsize_based_cleanup_mode_desc nvarchar(60)nvarchar(60) 쿼리 저장소의 실제 크기 기반 정리 모드의 텍스트 설명:Textual description of the actual size-based cleanup mode of Query Store:

OFFOFF
자동 (기본값)AUTO (default)
wait_stats_capture_modewait_stats_capture_mode smallintsmallint 쿼리 저장소 대기 통계의 캡처를 수행 하는지 여부를 제어 합니다.Controls whether Query Store performs capture of wait statistics:

0 = OFF0 = OFF
1 = ON1 = ON
적용 대상: SQL Server 2017(14.x)SQL Server 2017 (14.x) 부터 SQL Server 2017SQL Server 2017까지Applies to: SQL Server 2017(14.x)SQL Server 2017 (14.x) through SQL Server 2017SQL Server 2017.
wait_stats_capture_mode_descwait_stats_capture_mode_desc nvarchar(60)nvarchar(60) 실제 대기 통계 캡처 모드의 텍스트 설명:Textual description of the actual wait statistics capture mode:

OFFOFF
ON (기본값)ON (default)
적용 대상: SQL Server 2017(14.x)SQL Server 2017 (14.x) 부터 SQL Server 2017SQL Server 2017까지Applies to: SQL Server 2017(14.x)SQL Server 2017 (14.x) through SQL Server 2017SQL Server 2017.

사용 권한Permissions

VIEW DATABASE STATE 권한이 필요합니다.Requires the VIEW DATABASE STATE permission.

관련 항목See Also

sys.query_context_settings (TRANSACT-SQL) sys.query_context_settings (Transact-SQL)
sys.query_store_plan (TRANSACT-SQL) sys.query_store_plan (Transact-SQL)
sys.query_store_query (TRANSACT-SQL) sys.query_store_query (Transact-SQL)
sys.query_store_query_text (TRANSACT-SQL) sys.query_store_query_text (Transact-SQL)
sys.query_store_runtime_stats (TRANSACT-SQL) sys.query_store_runtime_stats (Transact-SQL)
sys.query_store_wait_stats(Transact-SQL)sys.query_store_wait_stats (Transact-SQL)
sys.query_store_runtime_stats_interval (TRANSACT-SQL) sys.query_store_runtime_stats_interval (Transact-SQL)
관련된 뷰, 함수 및 프로시저 Monitoring Performance By Using the Query Store
카탈로그 뷰(Transact-SQL) Catalog Views (Transact-SQL)
sys.fn_stmt_sql_handle_from_sql_stmt (Transact-SQL) sys.fn_stmt_sql_handle_from_sql_stmt (Transact-SQL)
쿼리 저장소 저장 프로시저 (TRANSACT-SQL)Query Store Stored Procedures (Transact-SQL)