使用Filestream创建数据库时出错

时间:2012-09-05 02:09:37

标签: sql-server sql-server-2008 filestream sql-server-2012

我正在使用sql server 2012 express在Windows 7操作系统上执行以下sql。

CREATE DATABASE Archive 
ON
PRIMARY ( 
    NAME = Arch1,
    FILENAME = 'c:\data\archdat1.mdf'),
FILEGROUP FileStreamGroup1 CONTAINS FILESTREAM
( 
    NAME = Arch3,
    FILENAME = 'c:\data\filestream1')
LOG ON  ( NAME = Archlog1,
    FILENAME = 'c:\data\archlog1.ldf')
GO

我收到此错误:

Msg 5120,Level 16,State 106,Line 1 无法打开物理文件“c:\ data \ filestream1”。操作系统错误259:“259(没有更多数据可用。)”。

这是我到达之前所做的事情:

  • 启用服务以允许来自“sql server配置管理器”的文件流。
  • 启用实例以允许文件流。
  • 完全控制'c:\ data \'文件夹到运行sql server service的“NT Service \ MSSQL $ SQLEXPRESS2012”帐户

我现在完全失去了帮助,我们非常感激。

更新1

我正在新的Windows 7安装上安装sql server express,看看是否可以解决这个问题。

更新2

尝试在安装了sql server 2008的windows xp机器上运行相同的sql并收到此错误:

无法打开物理文件“c:\ data \ filestream1”。操作系统错误-2147024891:“0x80070005(访问被拒绝。)”。

更新3

在干净的Windows 7机器上安装给出了完全相同的错误:

Msg 5120,Level 16,State 106,Line 1 无法打开物理文件“c:\ data \ filestream1”。操作系统错误259:“259(没有更多数据可用。)”。

更新4

通过将“登录为”更改为本地系统,我能够在Windows xp框上工作。

更新5

我尝试在Windows 7机箱上做同样的事情(将“登录为”更改为本地系统),但仍然遇到同样的错误。

1 个答案:

答案 0 :(得分:2)

我解决了这个问题。原来是我们的内部磁盘加密软件导致了这个错误。禁用软件是不够的。它必须完全删除。