启用 CLR 集成

适用于:SQL ServerAzure SQL 托管实例

公共语言运行时 (CLR) 集成功能默认处于关闭状态。 若要使用使用 CLR 集成实现的对象,请使用 SQL Server Management Studio 中启用 clr 服务器配置选项来启用 CLR 集成:

EXECUTE sp_configure 'clr enabled', 1;
RECONFIGURE;
GO

可以通过将 clr enabled 选项设置为 0 来禁用 CLR 集成。 禁用 CLR 集成时,SQL Server 将停止执行所有用户定义的 CLR 例程并卸载所有应用程序域。 依赖于 CLR 的功能(如 hierarchyid 数据类型、FORMAT 函数、复制和基于策略的管理)不受此设置的影响,并继续正常运行。

注意

尽管 Azure SQL 数据库中启用了 clr enabled 配置选项,但 Azure SQL 数据库中不支持开发 CLR 用户函数。

权限

若要启用 CLR 集成,必须具有 ALTER SETTINGS 服务器级别权限,该权限由 sysadmin 的成员隐式持有,serveradmin 固定服务器角色。

注解

在启动服务器时,配置了大量内存和大量处理器的计算机可能无法加载 SQL Server 的 CLR 集成功能。 若要解决此问题,请使用 -gmemory_to_reserve SQL Server 服务启动选项启动服务器,并指定足够大的内存值。 有关详细信息,请参阅 数据库引擎服务启动选项

注意

轻型池不支持公共语言运行时 (CLR) 执行。 启用 CLR 集成之前,必须禁用轻型池。 有关详细信息,请参阅 服务器配置:轻型池