该文件位于数据库文件不支持的网络路径上

时间:2012-06-20 07:27:51

标签: sql-server

从网络驱动器上的.mdf.ldf文件创建数据库时,我收到此错误消息。

执行查询:

create database DatabaseName ON
  (FileName = '\\gyancluster-sql\g$\Backup\WSS_Content_DB.mdf'),
  (FileName = '\\gyancluster-sql\g$\Backup\WSS_Content_DB_log.ldf')
  for attach
GO

错误

  

文件“\ gyancluster-sql \ g $ \ Backup \ WSS_Content_DB.mdf”在   数据库文件不支持的网络路径。

5 个答案:

答案 0 :(得分:4)

那你的问题是什么?问题是什么?毫无疑问 - 只是倾诉一句话;)

我的意思是,不想听起来太讽刺,但你可以阅读,或者?

  

文件“\ gyancluster-sql \ g $ \ Backup \ WSS_Content_DB.mdf”位于数据库不支持的网络路径上   文件。

这很清楚,不是吗?它不受支持 - 非常好的理由,顺便说一下,直到现在。

你现在问我们MS是否谎言?不,他们不撒谎 - 这是不支持的。他们真的意味着他们说的话。

有方法(http://support.microsoft.com/kb/304261),但就是这样;)

您是否希望我们重新输入错误消息?也许变成“伙计,不会烦恼,不酷,看到”?更清晰的?

严重 - 声音严厉,但我总是想知道为什么人们实际上没有阅读错误信息。

答案 1 :(得分:1)

在尝试创建数据库之前使用DBCC TRACEON(1807)。

此外,您可以将linea“-t 1807”添加到MSSQL服务器启动参数,它将使更改成为永久更改。上面的命令允许您使用网络存储,但在重新启动时,您将丢失该标志。

答案 2 :(得分:0)

很幸运,操作系统警告您直接通过网络打开数据库文件是个坏主意。较旧的数据库api允许您在没有警告的情况下执行此操作,然后该数据库应用程序的网络用户将因腐败数据库而永远受损。

答案 3 :(得分:0)

如果\ gyancluster-sql \ g $引用计算机gyancluster-sql上的本地磁盘G,这也恰好是sql服务运行的地方,那么你真的应该使用

create database DatabaseName ON
  (FileName = 'G:\Backup\WSS_Content_DB.mdf'),
  (FileName = 'G:\Backup\WSS_Content_DB_log.ldf')
  for attach
 GO

注意,即使您从另一台计算机运行该脚本,这仍然是正确的。

这仍然是一个坏主意,但您可以使用UNC名称,但前提是运行sql的服务能够访问共享(例如,如果在域管理员帐户下运行),但是通常被认为是不必要的安全风险。

如果你真的想在网络设备上存储数据库,那么显然这意味着sql服务确实需要访问共享,所以这是第一件要检查的东西,但你还需要阅读微软的文章克里斯·迪克森(Chris Dickson)指出了(即http://support.microsoft.com/kb/304261)哪些细节得到了支持。

答案 4 :(得分:0)

您需要通过网络共享启用数据库文件,以下帖子逐步说明如何操作。

https://blogs.msdn.microsoft.com/varund/2010/09/02/create-a-sql-server-database-on-a-network-shared-drive/

同一篇文章解释了这样做的风险。

我希望这会有所帮助

此致