sys.dm_clr_properties (Transact-SQL)
Retorna uma linha para cada propriedade relacionada à integração common language runtime (CLR) do SQL Server, incluindo a versão e o estado de CLR hospedado. O CLR hospedado é inicializado executando as instruções CREATE ASSEMBLY, ALTER ASSEMBLYou DROP ASSEMBLY, ou executando qualquer rotina CLR, tipo ou gatilho. A exibição sys.dm_clr_properties não especifica se a execução de código CLR do usuário foi habilitada no servidor. A execução de código CLR do usuário é habilitada usando o procedimento armazenado sp_configure com a opção clr enabled definida como 1.
A exibição sys.dm_clr_properties contém as colunas name e value. Cada linha nesta exibição fornece detalhes sobre uma propriedade do CLR hospedado. Use esta exibição para coletar informações sobre o CLR hospedado, como o diretório de instalação do CLR, a versão do CLR e o estado atual do CLR hospedado. Esta exibição poderá ajudá-lo a determinar se o código de integração CLR não está funcionando devido a problemas com a instalação de CLR no computador do servidor.
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
name |
nvarchar(128) |
O nome da propriedade. |
valor |
nvarchar(128) |
Valor da propriedade. |
Propriedades
A propriedade directory indica o diretório no qual o .NET Framework foi instalado no servidor. Pode haver várias instalações do .NET Framework no computador do servidor e o valor dessa propriedade identifica qual SQL Server de instalação está sendo usada.
A propriedade version indica a versão do .NET Framework e do CLR hospedado no servidor.
A exibição gerenciada dinâmica sys.dm_clr_properties pode retornar seis valores diferentes para a propriedade state, que reflete o estado do CLR hospedado SQL Server. São eles:
Mscoree não está carregado.
Mscoree está carregado.
Versão de CLR bloqueada com mscoree.
CLR é inicializado.
Inicialização de CLR falhou permanentemente.
CLR é interrompido.
O Mscoree is not loaded e Mscoree is loaded declara mostra a progressão da inicialização de CLR hospedado na inicialização do servidor e não é provável que seja visto.
O estado Locked CLR version with mscoree pode ser visto quando o CLR hospedado não está sendo usado e, portanto, ainda não foi inicializado. O CLR hospedado será inicializado na primeira vez em que uma instrução DDL (como CREATE ASSEMBLY (Transact-SQL)) ou um objeto de banco de dados gerenciado for executado.
O estado CLR is initialized indica que o CLR hospedado foi inicializado com êxito. Observe que isso não indica se a execução do código CLR do usuário foi habilitada. Se a execução do código CLR de usuário tiver sido primeiro habilitada e, em seguida, desabilitada usando o procedimento armazenado Transact-SQLsp_configure, o valor de estado ainda será CLR is initialized.
O estado CLR initialization permanently failed indica que a inicialização do CLR hospedado falhou. A pressão de memória é uma causa provável ou também poderia ser o resultado de uma falha no handshake de hospedagem entre SQL Server e o CLR. Nesse caso, será gerada a mensagem de erro 6512 ou 6513.
O CLR is stopped state só é visto quando SQL Server estiver no processo de desligamento.
Comentários
As propriedades e valores dessa exibição podem ser alterados em uma versão futura de SQL Server devido a aprimoramentos da funcionalidade da integração CLR.
Permissões
Requer a permissão VIEW SERVER STATE no servidor.
Exemplos
O exemplo a seguir recupera informações sobre o CLR hospedado:
select name, value
from sys.dm_clr_properties