我无法从我的Windows服务连接到SQL服务器
例外:无法启动服务。 System.ServiceModel.FaultException`1 [System.ServiceModel.ExceptionDetail]: 用户登录失败 'LOBAANSOFTWARES \ LBS-PC-19 $'。 (故障 细节等于An ExceptionDetail, 可能是由 IncludeExceptionDetailInFaults = TRUE, 其价值是: System.Data.SqlClient.SqlException: 用户登录失败 'LOBAANSOFTWARES \ LBS-PC-19 $'。在 System.Data.SqlClient.SqlInternalConnection.OnError(SQLEXCEPTION exception,Boolean breakConnection)at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() 在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior,SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj)at System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(布尔 enlistOK)at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo,String newPassword, Boolean ignoreSniOpenTimeout, TimeoutTimer超时,SqlConnection 拥有对象) System.Data.SqlClient.SqlInternalConnecti ...
他们是开始解决此解决方案的另一项服务
答案 0 :(得分:1)
错误信息非常清楚:
用户登录失败 'LOBAANSOFTWARES \ LBS-PC-19 $'。
该用户(运行您的服务的计算机的计算机名称)没有登录SQL Server的任何权限。
你可以:
您的连接字符串可能类似于:
server=(your server name);database=YourDatabase;Integrated Security=SSPI
这会尝试与运行该服务的用户连接到SQL服务器 - 默认情况下是您计算机的计算机帐户。
您可以更改连接字符串以使用您创建的特定SQL Server用户:
server=(your server name);database=YourDatabase;User ID=YourNewUser;Pwd=Top$Secret
答案 1 :(得分:0)
您是否检查过数据库的安全性以确保用户存在且具有足够的连接权限? Windows服务是否使用其运行的用户帐户的正确密码?