5

System.Data.SqlClient.SqlException: Failed to generate a user instance of SQL Server due to a failure in starting the process for the user instance. The connection will be closed.

有人遇到过这个错误和/或对它的原因和/或解决方案有任何想法吗?

此链接可能有相关信息。

更新

连接字符串是=.\SQLEXPRESS;AttachDbFilename=C:\temp\HelloWorldTest.mdf;Integrated Security=True

建议User Instance=false有效。

4

6 回答 6

11

这是您的问题的答案:

很多时候,旧用户实例会创建一些临时文件,这些文件会阻止创建新的 SQL Express 用户实例。删除这些文件后,一切都开始正常工作。

首先通过在 SQL Server Management Studio 中运行以下 SQL 来确认用户实例已启用:

exec sp_configure 'user instances enabled', 1.
GO
Reconfigure

运行查询后,重新启动您的 SQL Server 实例。现在删除以下文件夹:

C:\Documents and Settings\{YOUR_USERNAME}\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\{SQL_INSTANCE_NAME}

确保使用适当的名称替换{YOUR_USERNAME}和。{SQL_INSTANCE_NAME}

来源:修复错误“由于启动用户实例的进程失败,无法生成 SQL Server 的用户实例。”

于 2009-07-06T10:55:19.310 回答
3

您应该在连接字符串中添加显式 User Instance=true/false

于 2008-08-18T05:31:26.697 回答
0

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

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

不确定是什么原因造成的,我按照这篇文章和其他文章中关于删除“C:\Users\UserName\AppData\Local\Microsoft\Microsoft SQL Server Data\SQLEXPRESS”目录的说明进行操作,但无济于事。

对我来说诀窍是改变连接字符串

“数据源=.\SQLExpress;初始目录= DBFilePath;集成安全=SSPI;MultipleActiveResultSets=true”

“数据源=.\SQLExpress;初始目录= DBName;集成安全=SSPI;MultipleActiveResultSets=true”

于 2013-06-13T16:17:44.773 回答
0

我遵循了所有这些步骤,但也必须进入

  1. 控制面板 > 管理工具 > 服务
  2. 右键单击 SQL Server (SQLEXPRESS)
  3. 选择登录选项卡
  4. 选择本地系统帐户,然后单击确定

问题解决了。。。谢谢

于 2015-04-25T19:01:42.593 回答
0

请注意,我发现Jon Limjap的回答很有帮助,只是在我做了更多研究后发现它仅适用于包含 的数据库连接字符串AttachDBFilename,因此我必须将连接字符串更改web.config为:

connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf"

至:

connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"

详情请参见如果将 [user instances=true] 添加到连接字符串,则会引发异常

于 2021-08-18T16:38:01.137 回答
0

我有 Windows 8,我测试了解决方案

  1. 启用用户实例
    exec sp_configure 'user instances enabled', 1.
    GO
    Reconfigure

  2. 重新启动 SQL Server 实例。

  3. 删除文件夹: C:\Users\Arabic\{YOUR_USERNAME}\Local\Microsoft\Microsoft SQL Server Data
    将 {YOUR_USERNAME} 替换为适当的名称。

来自 Roboblob 的来源

于 2015-10-18T19:02:59.670 回答