10928: Resource limit for the database has been reached (Azure SQL) (데이터베이스 리소스 한도 도달)
SQL Server의미
Azure SQL Database에서 데이터베이스가 리소스 한도(동시 요청/worker 또는 세션 등)에 도달해 새 요청이 거부되었다. 선택한 서비스 계층(DTU 또는 vCore)의 상한에 도달했음을 의미한다.
원인
선택한 계층이 허용하는 최대 동시 요청(worker) 또는 세션 수를 초과했거나, 갑작스러운 부하 급증, worker 스레드를 소모하는 비효율적/장시간 쿼리, 너무 큰 커넥션 풀이 원인이다.
해결 방법
동시성을 줄인다: 쿼리를 최적화해 실행 시간을 단축하고, 불필요하게 열린 트랜잭션을 닫고, 커넥션 풀 크기를 적정하게 유지한다. 지속적인 부하에는 서비스 계층을 스케일 업한다(더 높은 DTU/vCore). sys.dm_db_resource_stats로 리소스 사용량을 모니터링한다. 재시도 가능한 오류에는 애플리케이션에서 지수 백오프 재시도를 구현한다.
같은 데이터베이스의 다른 항목
- 9421XML parsing: illegal xml character
- 15151Cannot find the object/principal because it does not exist or you do not have permission (객체/보안 주체가 존재하지 않거나 권한이 없어 찾을 수 없음)
- 4834You do not have permission to use the bulk load statement (bulk load 문을 사용할 권한 없음)
- 40544The database has reached its size quota (Azure SQL) (데이터베이스 크기 할당량 도달)
- 40613Database is not currently available (Azure SQL) (데이터베이스를 현재 사용할 수 없음)
- 102Incorrect syntax near 'token'
- 8114Error converting data type X to Y