解决:System.Data.SqlClient.SqlError: FILESTREAM 功能被禁用

时间:2022-01-26 04:57:25

还原 AdventureWorks Sample DataBase 时遇到 FILESTREAM feature is disabled 错误提示.

FileStream是SQL Server 2008 新添加的feature, 默认是关闭的. 如果 DB backup 文件启用了这个功能,再另外一台 Server 上还原时也需要 enable 这个feature.

刚开始的时候想通过更改 SQL Server Configuration Manager 打开, 步骤如下:
1> 打开 SQL Server Configuration Manager
2> 找到 SQL Server Services
3> 切换到 FILESTREAM tabe
4> 选中 [Enable FILESTREAM for Transact-SQL access] and [Enable FILESTREAM for file I/O streaming access]
4> 单击 OK 按钮, 重启 SQL Server Services

截图如下:

It does not work, 还原的时候错误依旧.

查了一下 Books-Online, 原来这个配置是用来控制 access 的, 根本是驴唇不对马嘴.

正确的设置方法是调用 sp_configure 存储过程来启用 filestream.

代码如下:

1
2
3
4
5
USE master
GO

EXEC sp_configure filestream_access_level, 2
RECONFIGURE

重新还原数据库, It Works !

遇到问题可以查文档和使用Google,不能想当然的去做.特别是在生产环境中.

疑惑: 在错误的提示窗口中有一个连接到 Microsoft Site 的URL,不过这个url不能用. 难道是过期了么?

System.Data.SqlClient.SqlError: FILESTREAM feature is disabled. (Microsoft.SqlServer.Smo)

For help, click:
http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.0.1600.22+((SQL_PreRelease).080709-1414+)&LinkId=20476