У нас есть SQL-сервер, на котором установлена 64-разрядная версия SQL 2005 Workgroup (9.0.4273), на сервере Windows 2003 64-разрядная.
Мы запустили процедуру sp_configure и перенастроили сервер, что указывает на то, что теперь clr включен.
exec sp_configure 'clr enabled', '1'
go
reconfigure
go
Однако при попытке вызвать CREATE ASSEMBLY сервер полностью умирает, и мы должны выполнить полную перезагрузку машины.
Еще немного диагностической информации, хотя для clr enabled установлено значение 1, и мы полностью перезагрузили сервер, выполнив следующую инструкцию
select * from sys.dm_clr_properties
возвращается
directory
version
state locked CLR version with mscoree
это то, что он говорит, когда CLR не включен на другом компьютере.
На правильно включенной машине (после перезагрузки) эта функция читает
directory C:\Windows\Microsoft.NET\Framework64\v2.0.50727\
version v2.0.50727
state CLR is initialized
Запрос может неправильно отображать версию CLR, если у вас нет VIEW SERVER STATE
разрешения на сервере.
Убедитесь, что ваш логин, под которым выполняется запрос, имеет VIEW SERVER STATE
разрешения. Один из методов - предоставить этот логин «db_owner» в базу данных и повторно запустить запрос, тогда вы должны получить правильные результаты.
Подробнее о sys.dm_clr_properties
: [https://msdn.microsoft.com/en-nz/library/ms174983.aspx]