sys.dm_db_log_space_usage(Transact-SQL)
적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance
트랜잭션 로그에 대한 공간 사용량 정보를 반환합니다.
참고 항목
모든 트랜잭션 로그 파일이 결합됩니다.
열 이름 | 데이터 형식 | 설명 |
---|---|---|
database_id | smallint | 데이터베이스 ID입니다. Azure SQL Database에서 값은 단일 데이터베이스 또는 탄력적 풀 내에서 고유하지만 논리 서버 내에는 고유하지 않습니다. |
total_log_size_in_bytes | bigint | 로그 크기 |
used_log_space_in_bytes | bigint | 사용된 로그 크기 |
used_log_space_in_percent | real | 전체 로그 크기에 대한 사용된 로그 크기(%) |
log_space_in_bytes_since_last_backup | bigint | 마지막 로그 백업 이후 사용된 공간의 양 적용 대상: SQL Server 2014 (12.x) 이상, SQL Database. |
사용 권한
SQL Server 및 SQL Managed Instance에서는 VIEW SERVER STATE
권한이 필요합니다.
SQL Database Basic, S0 및 S1 서비스 목표 또는 탄력적 풀 내의 데이터베이스에 대해서는 서버 관리자 계정, Microsoft Entra 관리자 계정 또는 ##MS_ServerStateReader##
서버 역할의 멤버 자격이 필요합니다. 다른 모든 SQL Database 서비스 목표에 대해서는 데이터베이스에 대한 VIEW DATABASE STATE
권한 또는 ##MS_ServerStateReader##
서버 역할의 멤버 자격이 필요합니다.
SQL Server 2022 이상에 대한 사용 권한
서버에 대한 VIEW SERVER PERFORMANCE STATE 권한이 필요합니다.
예제
A. tempdb에서 사용 가능한 로그 공간의 양 확인
다음 쿼리는 tempdb
에서 사용 가능한 총 로그 공간을 MB(메가바이트)로 반환합니다.
USE tempdb;
GO
SELECT
(total_log_size_in_bytes - used_log_space_in_bytes)*1.0/1024/1024 AS [free log space in MB]
FROM sys.dm_db_log_space_usage;