SQL Server 2014 Express:由于启动用户实例的进程失败而无法生成SQL Server的用户实例

时间:2014-12-16 21:46:12

标签: .net windows-8.1 sql-server-2014-express

我在Windows 8上运行了一个.net wpf应用程序。 8.1使用SQL Server 2014 Express。

以下错误不断回来(通常在重启后):

  

System.Data.Entity.Core.EntityException:底层提供程序在Open上失败。 ---> System.Data.SqlClient.SqlException:由于启动用户实例的进程失败,无法生成SQL Server的用户实例。连接将被关闭。   在System.Data.SqlClient.SqlInternalConnection.OnError(SqlException异常,Boolean breakConnection,Action`1 wrapCloseInAction)

我查看了以下类似帖子:

System.Data.SqlClient.SqlException: Failed to generate a user instance of SQL Server

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

我已将服务运行的用户更改为本地系统。

我编写了一个脚本,阻止SQLExpress2014服务删除C:\Documents and Settings\{YOUR_USERNAME}\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\{SQL_INSTANCE_NAME}文件夹下的所有文件,然后重新启动该服务。

运行该脚本会暂时修复该问题,但在重新启动后通常会再次发生,需要重新运行该脚本。

以下是我的应用程序连接字符串:

metadata=res://*/Models.###.csdl|res://*/Models.###.ssdl|res://*/Models.###.msl;provider=System.Data.SqlClient;provider connection string="data source=.\SQLEXPRESS2014;AttachDbFilename=|DataDirectory|\###.mdf;Database=###;integrated security=True;multipleactiveresultsets=True;User Instance=True;application name=EntityFramework"

我是否还需要采取其他措施来防止此错误?

1 个答案:

答案 0 :(得分:0)

经过大量测试并且无法解决问题后,我决定关闭"用户实例"并首先解决原因所在的遗留原因。

这可能是一个很好的举措,因为已弃用用户实例功能而支持LocalDB:

http://msdn.microsoft.com/en-AU/library/hh510202.aspx

http://msdn.microsoft.com/en-us/library/ms143684.aspx