clr enabled (параметр конфигурации сервера)

Применимо к:SQL Server

Используйте параметр clr enabled, чтобы указать, может ли SQL Server выполнять пользовательские сборки. Параметр clr enabled принимает следующие значения:

Значение Описание
0 Выполнение сборок не разрешается в SQL Server.
1 Выполнение сборок разрешается в SQL Server.

Только для WOW64. Перезагрузите серверы WOW64, чтобы эти изменения вступили в силу. Для других типов серверов перезагрузка не требуется.

При выполнении инструкции RECONFIGURE и изменении значения параметра clr enabled с 1 на 0 все домены приложений, содержащие пользовательские сборки, немедленно выгружаются.

Важно!

При использовании упрощенных пулов выполнение в среде CLR не поддерживается. Отключите параметр "clr enabled" или "lightweight pooling". Функции, зависящие от среды CLR и неправильно работающие в режиме волокон, включают тип данных hierarchyid, функцию FORMAT, репликацию и управление на основе политик. Дополнительные сведения см. в статье Параметр конфигурации сервера "Использование упрощенных пулов".

Предупреждение

Среда CLR использует управление доступом для кода (CAS) в .NET Framework, которое больше не поддерживается в качестве границы безопасности. Сборки среды CLR, созданные с помощью PERMISSION_SET = SAFE, могут получать доступ к внешним системным ресурсам, вызывать неуправляемый код и получать права системного администратора. Начиная с SQL Server 2017 (14.x);, появился параметр sp_configure, называемый clr strict security, для повышения безопасности сборок среды CLR. clr strict security включен по умолчанию и рассматривает сборки SAFE и EXTERNAL_ACCESS, как если бы они были помечены UNSAFE. Параметр clr strict security можно отключить для обеспечения обратной совместимости, но это делать не рекомендуется. Корпорация Майкрософт рекомендует подписывать все сборки с помощью сертификата или асимметричного ключа с соответствующим именем входа, которому предоставлено разрешение UNSAFE ASSEMBLY в базе данных master. Администраторы SQL Server также могут добавлять сборки в список сборок, которым должно доверять ядро СУБД. Дополнительные сведения см. в разделе sys.sp_add_trusted_assembly.

Примечание

Хотя параметр конфигурации clr enabled включен в База данных SQL Azure, разработка пользовательских функций среды CLR не поддерживается в службе База данных SQL Azure.

Пример

В следующем примере сначала выводится текущее значение параметра clr enabled, а затем задается значения 1 для включения параметра. Чтобы отключить этот параметр, задайте значение 0.

EXEC sp_configure 'clr enabled';  
EXEC sp_configure 'clr enabled' , '1';  
RECONFIGURE;    

Дальнейшие шаги