다음을 통해 공유


SQL Server, User Settable 개체

적용 대상: SQL Server

Microsoft SQL Server의 User Settable 개체를 사용하면 사용자 지정 카운터 인스턴스를 만들 수 있습니다. 사용자 지정 카운터 인스턴스를 사용하여 SQL Server 데이터베이스에 고유한 구성 요소(예: 기록된 고객 주문 수 또는 제품 인벤토리)와 같은 기존 카운터에서 모니터링되지 않는 서버의 측면을 모니터링합니다.

User Settable 개체는 사용자 카운터 1 에서 사용자 카운터 10까지 10개의 쿼리 카운터 인스턴스를 가집니다. 이러한 카운터는 .를 통해 sp_user_counter10SQL Server 저장 프로시저에 매핑됩니다sp_user_counter1. 사용자 애플리케이션에서 이러한 저장 프로시저를 실행하면 저장 프로시저에서 설정한 값이 시스템 모니터에 표시됩니다. 카운터는 단일 수 값을 모니터링할 수 있습니다(예: 하루에 발생한 특정 제품의 주문 수를 계산하는 저장 프로시저).

참고 항목

사용자 카운터 저장 프로시저는 시스템 모니터에서 자동으로 폴링되지 않습니다. 카운터 값을 업데이트하려면 사용자 애플리케이션에서 명시적으로 실행해야 합니다. 트리거를 사용하여 카운터 값을 자동으로 업데이트합니다.

이 표에서는 SQL Server User Settable 개체에 대해 설명합니다.

SQL Server User Settable 카운터 설명
쿼리 User Settable 개체에는 쿼리 카운터가 포함되어 있습니다. 사용자는 쿼리 개체에서 각 사용자 카운터를 구성합니다. 각 카운터는 정데이터 형식입니다.

이 표에서는 Query 카운터의 인스턴스 에 대해 설명합니다.

쿼리 카운터 인스턴스 설명
사용자 카운터 1 를 사용하여 sp_user_counter1정의합니다.
사용자 카운터 2 를 사용하여 sp_user_counter2정의합니다.
사용자 카운터 3 를 사용하여 sp_user_counter3정의합니다.
...
사용자 카운터 10 를 사용하여 sp_user_counter10정의합니다.

사용자 카운터 값 설정

사용자 카운터 저장 프로시저를 이용하려면 새 카운터 값을 나타내는 하나의 정수로 된 매개 변수로 애플리케이션을 실행하십시오. 예를 들어 사용자 카운터 1을 값 10으로 설정하려면 다음 Transact-SQL 문을 실행합니다.

EXECUTE dbo.sp_user_counter1 10;

사용자 카운터 저장 프로시저는 사용자 고유의 저장 프로시저와 같은 다른 저장 프로시저를 호출할 수 있는 모든 위치에서 호출할 수 있습니다. 예를 들어 다음 저장 프로시저를 만들어 SQL Server 인스턴스가 시작된 이후 연결 수와 연결 시도 횟수를 계산할 수 있습니다.

DROP PROC My_Proc;  
GO  
CREATE PROC My_Proc  
AS   
   EXECUTE dbo.sp_user_counter1 @@CONNECTIONS;  
GO  

@@CONNECTIONS 함수는 SQL Server 인스턴스가 시작된 이후 연결 또는 시도된 연결 수를 반환합니다. 이 값은 저장 프로시저에 sp_user_counter1 매개 변수로 전달됩니다.

Important

사용자 카운터 저장 프로시저에서 정의한 쿼리는 가능한 한 단순한 것이 좋습니다. 대량의 I/O를 수행하는 상당한 정렬 또는 해시 작업 또는 쿼리를 수행하는 메모리 집약적 쿼리는 실행하는 데 비용이 많이 들고 성능에 영향을 줄 수 있습니다.

모니터 예제

sys.dm_os_performance_counters 동적 관리 뷰에서 이 T-SQL 쿼리를 사용하여 이 개체의 카운터를 검색하기 시작합니다.

SELECT * FROM sys.dm_os_performance_counters
WHERE object_name LIKE '%User Settable%';

사용 권한

저장 프로시저 sp_user_counter는 모든 사용자에 대해 사용할 수 있지만 쿼리 카운터의 경우 제한될 수 있습니다.