다음을 통해 공유


sys.dm_clr_properties(Transact-SQL)

호스팅된 CLR의 버전 및 상태를 포함하여 SQL Server CLR(공용 언어 런타임) 통합과 관련된 각 속성에 대해 행을 반환합니다. 호스팅된 CLR은 CREATE ASSEMBLY, ALTER ASSEMBLY 또는 DROP ASSEMBLY 문을 실행하거나 CLR 루틴, 유형 또는 트리거를 실행하여 초기화됩니다. sys.dm_clr_properties 뷰는 사용자 CLR 코드 실행이 서버에 설정되었는지 여부를 지정하지 않습니다. 사용자 CLR 코드 실행은 clr enabled 옵션이 1로 설정된 sp_configure 저장 프로시저를 사용하여 설정합니다.

sys.dm_clr_properties 뷰는 name 및 value 열을 포함합니다. 이 뷰의 각 행은 호스팅된 CLR의 속성에 대한 세부 정보를 제공합니다. 이 뷰를 사용하여 CLR 설치 디렉터리, CLR 버전, 호스팅된 CLR의 현재 상태와 같은 호스팅된 CLR에 대한 정보를 수집할 수 있습니다. 이 뷰를 사용하면 서버 컴퓨터에 CLR을 설치할 때 발생하는 문제로 인해 CLR 통합 코드가 작동하지 않고 있는지 확인할 수 있습니다.

열 이름

데이터 형식

설명

name

nvarchar(128)

속성의 이름입니다.

value

nvarchar(128)

속성의 값입니다.

속성

directory 속성은 .NET Framework가 설치된 서버의 디렉터리를 나타냅니다. 서버 컴퓨터에 여러 .NET Framework 설치가 있을 수 있으며 이 속성 값은 SQL Server에서 사용하는 설치를 식별합니다.

version 속성은 서버에 있는 .NET Framework 및 호스팅된 CLR의 버전을 나타냅니다.

sys.dm_clr_properties 동적 관리 뷰는 SQL Server의 호스팅된 CLR 상태를 반영하는 state 속성에 대해 다음 6개 값을 반환할 수 있습니다.

  • Mscoree is not loaded.

  • Mscoree is loaded.

  • Locked CLR version with mscoree.

  • CLR is initialized.

  • CLR initialization permanently failed.

  • CLR is stopped.

Mscoree is not loaded 및 Mscoree is loaded 상태는 서버 시작 시 호스팅된 CLR 초기화의 처리 과정을 나타내며 표시되지 않습니다.

Locked CLR version with mscoree 상태는 호스팅된 CLR을 사용하지 않아 아직 초기화되지 않은 경우에 표시될 수 있습니다. 호스팅된 CLR은 DDL 문(예: CREATE ASSEMBLY(Transact-SQL)) 또는 관리되는 데이터베이스 개체를 처음 실행할 때 초기화됩니다.

CLR is initialized 상태는 호스팅된 CLR이 성공적으로 초기화되었음을 나타내지만 사용자 CLR 코드 실행이 설정되었는지 여부는 나타내지 않습니다. 사용자 CLR 코드 실행이 설정된 다음 Transact-SQLsp_configure 저장 프로시저를 사용하여 해제된 경우에도 상태 값은 CLR is initialized가 됩니다.

CLR initialization permanently failed 상태는 호스팅된 CLR 초기화에 실패했음을 나타냅니다. 이는 메모리 부족 때문이거나 SQL Server와 CLR 간의 호스팅 핸드셰이크에서 오류가 발생했기 때문일 수도 있습니다. 이 경우 오류 메시지 6512 또는 6513이 발생합니다.

CLR is stopped state 상태는 SQL Server가 종료되고 있는 경우에만 표시됩니다.

주의

이 뷰의 속성 및 값은 향상된 CLR 통합 기능으로 인해 이후 버전의 SQL Server에서 변경될 수 있습니다.

사용 권한

서버에 대한 VIEW SERVER STATE 권한이 필요합니다.

다음 예에서는 호스팅된 CLR에 대한 정보를 검색합니다.

select name, value 
from sys.dm_clr_properties