ASP.net服务访问数据库

ASP.net服务访问数据库,asp.net,sql,sql-server,windows,service,Asp.net,Sql,Sql Server,Windows,Service,我运行在服务器上创建的ASP.net服务。在我登录服务器的一天中,大部分时间和服务都正常运行 该服务每十分钟检查一次数据库 我已将管理员的服务登录设置为调试,但没有任何效果 一夜之间,我从服务中发现了很多错误(每十分钟一次) 堆栈跟踪如下所示: System.Data.SqlClient.SqlException (0x80131904): Cannot open database "AHDB" requested by the login. The login failed. Login fa

我运行在服务器上创建的ASP.net服务。在我登录服务器的一天中,大部分时间和服务都正常运行

该服务每十分钟检查一次数据库

我已将管理员的服务登录设置为调试,但没有任何效果

一夜之间,我从服务中发现了很多错误(每十分钟一次)

堆栈跟踪如下所示:

System.Data.SqlClient.SqlException (0x80131904): Cannot open database "AHDB" requested by the login. The login failed.
Login failed for user 'AH_user'.
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
   at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, SqlConnection owningObject)
   at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout)
   at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
   at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
   at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
   at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
   at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
   at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.SqlClient.SqlConnection.Open()
   at System.Data.Linq.SqlClient.SqlConnectionManager.UseConnection(IConnectionUser user)
   at System.Data.Linq.SqlClient.SqlProvider.get_IsSqlCe()
   at System.Data.Linq.SqlClient.SqlProvider.InitializeProviderMode()
   at System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
   at System.Data.Linq.DataQuery`1.System.Collections.Generic.IEnumerable<T>.GetEnumerator()
   at AussieHaulageDAL.Collections.SalesAdCollection.Expire_SalesAd()
   at AHEmailerService.Emailer.LoadQuotes.CheckQuotes()
System.Data.SqlClient.SqlException(0x80131904):无法打开登录请求的数据库“AHDB”。登录失败。
用户“ahu user”登录失败。
位于System.Data.SqlClient.SqlInternalConnection.OneError(SqlException异常,布尔断开连接)
位于System.Data.SqlClient.TdsParser.throweexception和warning()处
在System.Data.SqlClient.TdsParser.Run(RunBehavior RunBehavior,SqlCommand cmdHandler,SqlDataReader dataStream,BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj)
位于System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(布尔值登记OK)
位于System.Data.SqlClient.SqlInternalConnectionDS.AttemptOneLogin(ServerInfo ServerInfo、字符串newPassword、布尔值IgnoresInOpenTimeout、TimeoutTimer timeout、SqlConnection owningObject)
位于System.Data.SqlClient.SqlInternalConnectionDS.LoginOfAliver(ServerInfo服务器信息、字符串newPassword、Boolean redirectedUserInstance、SqlConnectionOwningObject、SqlConnectionString连接选项、超时超时)
位于System.Data.SqlClient.SqlInternalConnectionDS.OpenLoginList(SqlConnection owningObject、TimeoutTimer timeout、SqlConnectionString connectionOptions、String newPassword、Boolean redirectedUserInstance)
位于System.Data.SqlClient.SqlInternalConnectionDS..ctor(DbConnectionPoolIdentity、SqlConnectionString connectionOptions、Object providerInfo、String newPassword、SqlConnection owningObject、Boolean redirectedUserInstance)
位于System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions选项、对象池组ProviderInfo、DbConnectionPool池、DbConnection所有者连接)
位于System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection所有者连接、DbConnectionPool池、DbConnectionOptions选项)
位于System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
位于System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
位于System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
位于System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection-owningConnection)
位于System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection,DbConnectionFactory connectionFactory)
在System.Data.SqlClient.SqlConnection.Open()处
位于System.Data.Linq.SqlClient.SqlConnectionManager.UseConnection(IConnectionUser用户)
在System.Data.Linq.SqlClient.SqlProvider.get_IsSqlCe()处
位于System.Data.Linq.SqlClient.SqlProvider.InitializeProviderMode()处
位于System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(表达式查询)
位于System.Data.Linq.DataQuery`1.System.Collections.Generic.IEnumerable.GetEnumerator()
在AussieHaulageDAL.Collections.SalesAdCollection.Expire\u SalesAd()中
在AHEmailerService.Emailer.LoadQuotes.CheckQuotes()上

确保运行数据库的windows用户可以访问数据库,我认为这就是问题所在。

当它说

无法打开登录请求的数据库“AHDB”

…这意味着数据库不可用。您的登录没有问题,否则
“登录失败”是一种症状,而不是原因

  • 你有(坏主意)吗
  • 是否有其他进程将其脱机或单用户等

可能不存在:错误指示“数据库不存在”。“登录失败”是一种症状,而不是原因