다음을 통해 공유


sys.dm_user_db_resource_governance(Transact-SQL)

적용 대상: 지원되지 않습니다. SQL Server Azure SQL Database 지원되지 않습니다. Azure Synapse Analytics 지원되지 않습니다. PDW(Analytics Platform System)

현재 데이터베이스 또는 탄력적 풀의 리소스 거버넌스 메커니즘에서 사용하는 실제 구성 및 용량 설정을 반환합니다.

단일 데이터베이스의 경우 현재 데이터베이스에 대한 단일 행을 반환합니다. 탄력적 풀의 경우 호출자가 사용 권한을 보유 VIEW DATABASE STATE 하는 각 데이터베이스의 행을 반환하거나 VIEW DATABASE PERFORMANCE STATE 호출자가 사용 권한을 보유하는 경우 탄력적 풀의 모든 데이터베이스에 대한 행을 VIEW SERVER STATE VIEW SERVER PERFORMANCE STATE 반환합니다.

열 이름 데이터 형식 설명
database_id int 데이터베이스 또는 탄력적 풀 내에서 고유하지만 논리 서버 내에는 없는 데이터베이스의 ID입니다. 자세한 내용은 DB_ID를 참조하세요.
logical_database_guid uniqueidentifier 사용자 데이터베이스의 수명 동안 변경되지 않은 상태로 유지되는 사용자 데이터베이스의 고유 식별자입니다. 데이터베이스 이름을 바꾸거나 서비스 수준 목표를 변경해도 이 값은 변경되지 않습니다.
physical_database_guid uniqueidentifier 사용자 데이터베이스에 해당하는 현재 물리적 데이터베이스의 고유 식별자입니다. 데이터베이스 서비스 수준 목표를 변경하면 이 값이 변경됩니다.
server_name nvarchar 논리 서버 이름입니다.
database_name nvarchar 사용자 데이터베이스 이름입니다.
slo_name nvarchar 하드웨어 생성을 포함한 서비스 수준 목표입니다.
dtu_limit int 데이터베이스의 DTU 제한(vCore의 경우 NULL)입니다.
cpu_limit int 데이터베이스의 vCore 제한(DTU 데이터베이스의 경우 NULL).
min_cpu tinyint 사용자 워크로드 리소스 풀의 MIN_CPU_PERCENT 값입니다. 리소스 풀 개념을 참조 하세요.
max_cpu tinyint 사용자 워크로드 리소스 풀의 MAX_CPU_PERCENT 값입니다. 리소스 풀 개념을 참조 하세요.
cap_cpu tinyint 사용자 워크로드 리소스 풀의 CAP_CPU_PERCENT 값입니다. 리소스 풀 개념을 참조 하세요.
min_cores smallint 내부용으로만 사용됩니다.
max_dop smallint 사용자 워크로드 그룹의 MAX_DOP 값입니다. CREATE WORKLOAD GROUP을 참조하세요.
min_memory int 사용자 워크로드 리소스 풀의 MIN_MEMORY_PERCENT 값입니다. 리소스 풀 개념을 참조 하세요.
max_memory int 사용자 워크로드 리소스 풀의 MAX_MEMORY_PERCENT 값입니다. 리소스 풀 개념을 참조 하세요.
max_sessions int 사용자 워크로드 그룹에 허용되는 최대 세션 수입니다.
max_memory_grant int 사용자 워크로드 그룹의 REQUEST_MAX_MEMORY_GRANT_PERCENT 값입니다. CREATE WORKLOAD GROUP을 참조하세요.
max_db_memory int 내부용으로만 사용됩니다.
govern_background_io bit 내부용으로만 사용됩니다.
min_db_max_size_in_mb bigint 데이터 파일의 최소 max_size 값(MB)입니다. sys.database_files 참조하세요.
max_db_max_size_in_mb bigint 데이터 파일의 최대 max_size 값(MB)입니다. sys.database_files 참조하세요.
default_db_max_size_in_mb bigint 데이터 파일의 기본 max_size 값(MB)입니다. sys.database_files 참조하세요.
db_file_growth_in_mb bigint 데이터 파일의 기본 증가 증분(MB)입니다. sys.database_files 참조하세요.
initial_db_file_size_in_mb bigint 새 데이터 파일의 기본 크기(MB)입니다. sys.database_files 참조하세요.
log_size_in_mb bigint 새 로그 파일의 기본 크기(MB)입니다. sys.database_files 참조하세요.
instance_cap_cpu int 내부용으로만 사용됩니다.
instance_max_log_rate bigint SQL Server 인스턴스의 로그 생성 속도 제한(초당 바이트)입니다. 인스턴스 및 기타 시스템 데이터베이스를 포함하여 tempdb 인스턴스에서 생성된 모든 로그에 적용됩니다. 탄력적 풀에서 풀의 모든 데이터베이스에서 생성된 로그에 적용됩니다.
instance_max_worker_threads int SQL Server 인스턴스에 대한 작업자 스레드 제한입니다.
replica_type int 복제본 유형( 여기서 0은 주 복제본이고 1은 보조)입니다.
max_transaction_size bigint 모든 트랜잭션에서 사용되는 최대 로그 공간(KB)입니다.
checkpoint_rate_mbps int 내부용으로만 사용됩니다.
checkpoint_rate_io int 내부용으로만 사용됩니다.
last_updated_date_utc 날짜/시간 마지막 설정 변경 또는 재구성 날짜 및 시간(UTC)입니다.
primary_group_id int 주 복제본 및 보조 복제본의 사용자 워크로드에 대한 워크로드 그룹 ID입니다.
primary_group_max_workers int 사용자 워크로드 그룹에 대한 작업자 스레드 제한입니다.
primary_min_log_rate bigint 사용자 워크로드 그룹 수준에서 최소 로그 속도(초당 바이트)입니다. 리소스 거버넌스는 이 값보다 낮은 로그 속도를 줄이려고 시도하지 않습니다.
primary_max_log_rate bigint 사용자 워크로드 그룹 수준에서 초당 최대 로그 속도(바이트)입니다. 리소스 거버넌스는 이 값 이상의 로그 속도를 허용하지 않습니다.
primary_group_min_io int 사용자 워크로드 그룹에 대한 최소 IOPS입니다. 리소스 거버넌스는 이 값보다 낮은 IOPS를 줄이려고 시도하지 않습니다.
primary_group_max_io int 사용자 워크로드 그룹의 최대 IOPS입니다. 리소스 거버넌스는 이 값보다 높은 IOPS를 허용하지 않습니다.
primary_group_min_cpu float 사용자 워크로드 그룹 수준의 최소 CPU 백분율입니다. 리소스 거버넌스는 이 값보다 낮은 CPU 사용률을 줄이려고 시도하지 않습니다.
primary_group_max_cpu float 사용자 워크로드 그룹 수준의 최대 CPU 백분율입니다. 리소스 거버넌스는 이 값보다 CPU 사용률을 허용하지 않습니다.
primary_log_commit_fee int 사용자 워크로드 그룹에 대한 로그 속도 거버넌스 커밋 요금(바이트)입니다. 커밋 수수료는 로그 비율 회계 목적으로만 고정된 값으로 각 로그 IO의 크기를 증가합니다. 스토리지에 대한 실제 로그 IO는 증가하지 않습니다.
primary_pool_max_workers int 사용자 워크로드 리소스 풀에 대한 작업자 스레드 제한입니다.
pool_max_io int 사용자 워크로드 리소스 풀에 대한 최대 IOPS 제한입니다.
govern_db_memory_in_resource_pool bit 내부용으로만 사용됩니다.
volume_local_iops int 내부용으로만 사용됩니다.
volume_managed_xstore_iops int 내부용으로만 사용됩니다.
volume_external_xstore_iops int 내부용으로만 사용됩니다.
volume_type_local_iops int 내부용으로만 사용됩니다.
volume_type_managed_xstore_iops int 내부용으로만 사용됩니다.
volume_type_external_xstore_iops int 내부용으로만 사용됩니다.
volume_pfs_iops int 내부용으로만 사용됩니다.
volume_type_pfs_iops int 내부용으로만 사용됩니다.
user_data_directory_space_quota_mb int 데이터베이스 엔진 인스턴스에 대한 최대 로컬 스토리지입니다. 스토리지 공간 거버넌스 참조
user_data_directory_space_usage_mb int 데이터 파일, 트랜잭션 로그 파일 및 'tempdb' 파일별 현재 로컬 스토리지 사용량입니다. 5분마다 업데이트됩니다.
bufferpool_extension_size_gb int 내부용으로만 사용됩니다.
pool_max_log_rate bigint 사용자 리소스 풀 수준에서 초당 최대 로그 속도(바이트)입니다. 리소스 거버넌스는 리소스 풀의 모든 워크로드 그룹에 대한 총 로그 속도가 이 값보다 높은 것을 허용하지 않습니다.
primary_group_max_outbound_connection_workers int 기본 사용자 워크로드 그룹에 대한 아웃바운드 연결 작업자 스레드 제한입니다.
primary_pool_max_outbound_connection_workers int 사용자 워크로드 리소스 풀에 대한 아웃바운드 연결 작업자 스레드 제한입니다.
replica_role tinyint 현재 복제본 역할을 나타냅니다.

0 - 기본
1 - HA(고가용성) 보조
2 - 지역 복제 전달자
3 - 읽기 가능한 보조 복제본에 ReadOnly 의도로 연결된 경우 명명된 복제본

보고서 1. ReadOnly 의도를 지정하지 않고 지역 보조 데이터베이스에 연결하는 경우 지역 복제 전달자에 대한 연결을 반영하도록 2를 보고합니다. ReadOnly 의도를 지정하지 않고 명명된 복제본에 연결하는 경우 3을 보고합니다.

사용 권한

SQL Database Basic, S0S1 서비스 목표 또는 탄력적 풀 내의 데이터베이스에 대해서는 서버 관리자 계정, Microsoft Entra 관리자 계정 또는 ##MS_ServerStateReader## 서버 역할의 멤버 자격이 필요합니다. 다른 모든 SQL Database 서비스 목표에 대해서는 데이터베이스에 대한 VIEW DATABASE STATE 권한 또는 ##MS_ServerStateReader## 서버 역할의 멤버 자격이 필요합니다.

설명

Azure SQL Database의 리소스 거버넌스에 대한 설명은 SQL Database 리소스 제한을 참조 하세요.

Important

이 DMV에서 반환되는 대부분의 데이터는 내부 사용을 위한 것이며 언제든지 변경될 수 있습니다.

예제

사용자 데이터베이스의 컨텍스트에서 실행되는 다음 쿼리는 사용자 워크로드 그룹 및 리소스 풀 수준에서 최대 로그 속도 및 최대 IOPS를 반환합니다. 단일 데이터베이스의 경우 한 행이 반환됩니다. Elastic Pool 데이터베이스의 경우 풀의 각 데이터베이스에 대해 행이 반환됩니다.

SELECT database_name,
       primary_group_id,
       primary_max_log_rate,
       primary_group_max_io,
       pool_max_io
FROM sys.dm_user_db_resource_governance
ORDER BY database_name;  

다음 단계