我正在尝试连接到MDF。我甚至完全重新安装了sql server express(它现在是我的盒子上安装的唯一SQL的味道,之前我有05开发和快递)。我已经证实路径都是正确的,到目前为止我的google-fu还没有帮助。

完整的异常消息是:

  

由于失败而无法生成SQL Server的用户实例   启动用户实例的进程。连接将是   闭合。

连接字符串是:

<add name= "CustomerEntities"
     connectionString="metadata=res://*/Data.CustomerModel.csdl|res://*/Data.CustomerModel.ssdl|res://*/Data.CustomerModel.msl;
     provider=System.Data.SqlClient;
     provider connection string='Data Source=.\SQLEXPRESS;
     AttachDbFilename=\App_Data\CustomerDb.mdf;
     Integrated Security=True;
     User Instance=True'"
     providerName="System.Data.EntityClient" />

其他信息:

我在网上发现的这个错误的几个引用并不适用于我。例如,我看到的是尝试通过远程桌面启动用户实例时发生此错误的地方(我在本地执行此操作)。虽然另一个人建议它与旧的快速安装中的剩余文件有关...我已经查看了指定的位置而没有找到那些文物。我也试过运行sp_configure 'user instances enabled', '1',但它说它已经设置为1。

有帮助吗?

解决方案

好的,它现在有效!猜测这是一个复合问题...我采取的解决方法就是这样:

  1. 更改了连接字符串中的以下属性(请注意细微差别):AttachDbFilename=|DataDirectory|CustomerDb.mdf;
  2. 删除了以下目录的内容:c:\Users\<user name>\AppData\Local\Microsoft\Microsoft SQL Server Data\SQLEXPRESS。之前我以为我曾经找过这个,但我实际上已经查看了Microsoft Sql Server文件夹。再次,一个微妙的区别。
  3. 一旦我做了这两件事,连接就开始起作用了:-D

其他提示

即使上面的答案解决了许多人的问题,我仍然发现这些问题的本质不足。最接近它的是@sohaiby上面的答案。但它错误地指的是使用Management Studio。

本主题之上的错误消息非常清楚地表明问题在于生成用户实例。这里详细描述了什么是实例以及如何使用它: https://msdn.microsoft.com/en-我们/库/ ms254504(v = vs.110)的.aspx

就个人而言,我在将数据库连接从Windows身份验证模式切换到SQL Server身份验证时遇到了此问题。我只是通过修改连接字符串的一部分来解决它: <!>; User Instance = false; <!> quot; 而不是<!> quot; User Instance = true; <!> “;对于Windows身份验证工作正常。

我改为<!>后;用户实例= false; <!> quot;我的连接工作正常,没有任何额外的操作。我不能坚持认为它会起作用或适用于所有场景。但是,我肯定会建议在上述其他激烈的方法之前尝试它,例如擦除SQL server工作目录。

当我将代码从一台机器移动到另一台机器时,我遇到了同样的错误。我正在使用VS2010和SQLEXPRESS 2008一起使用它。

欺骗,删除以下文件夹中的所有内容<!> C:\ Users \ UserName \ AppData \ Local \ Microsoft \ Microsoft SQL Server Data \ SQLEXPRESS <!> quot;为我工作。

除了这里的其他解决方案,这个也可能有所帮助。 确保应用程序池作为网络服务运行,而不是ApplicationPoolIdentity。

此解决方案可在此处找到: http://blogs.msdn.com/b/webdevelopertips/archive/2010/05/06/tip-106-did-you-know-如何对创建最ASPNETDB-MDF-file.aspx

正如其他人所说,删除目录的内容:c:\ Users \\ AppData \ Local \ Microsoft \ Microsoft SQL Server Data \ SQLEXPRESS为我解决了这个问题。在Windows 7上,从文档浏览器浏览c:\ users \ username目录可以帮助其他人的注释没有显示AppData文件夹,该文件夹让我离开了一段时间(因为我以为我没有AppData目录)直到我发现它确实存在(但是在Windows 7的文档浏览器中没有显示),你只需要输入完整的路径名即可。

我今天早上在测试部署环境中开始收到此错误。我使用的是SQL Server Express 2008,而我得到的错误是

<!>“;由于启动用户实例的进程失败,无法生成SQL Server的用户实例。连接将被关闭。<!>

不确定导致它的原因,我按照这篇文章和其他帖子中的说明进行操作 删除<!>; C:\ Users \ UserName \ AppData \ Local \ Microsoft \ Microsoft SQL Server Data \ SQLEXPRESS <!> quot;目录,但无济于事。

我的诀窍是从

更改连接字符串

<!> quot; Data Source =。\ SQLExpress; Initial Catalog = DBFilePath; Integrated Security = SSPI; MultipleActiveResultSets = true <!> quot;

<!> quot; Data Source =。\ SQLExpress; Initial Catalog = DBName; Integrated Security = SSPI; MultipleActiveResultSets = true <!> quot;

我在Windows窗体应用程序中使用我的mdf文件解决了这个问题,我只是重新启动计算机,我的问题就解决了。

要解决此问题,请打开SQL Server Management Studio Express。 在查询编辑器中,键入以下文本:

sp_configure 'user instances enabled', 1;
 RECONFIGURE

运行它。 然后重新启动SQL Server数据库。

您是否尝试使用SQL Management Studio连接到SQL Server实例?

如果这也不允许你连接那么可能是因为SQL服务没有正确启动。

通过检查控制面板中的服务来验证服务是否正在运行。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top