2011-10-04 2 views
1

Je lance un service ASP.net que j'ai créé sur mon serveur. Pendant la journée, je me connecte au serveur, la plupart du temps et le serice fonctionne correctement.Service ASP.net accédant à la base de données

Le service vérifie simplement une base de données toutes les dix minutes.

J'ai mis le journal de service à l'administrateur pour le débogage sans effet.

OverNight Je reçois beaucoup d'erreurs du service (toutes les dix minutes)

La trace de la pile se présente comme suit:

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() 

Répondre

2

Quand il dit

Impossible base de données ouverte "AHDB" demandée par la connexion.

... cela signifie que la base de données n'est pas disponible. Rien de mal avec votre login autrement
« Échec de la connexion » est un symptôme, pas la cause

  • Avez-vous "auto close" enabled? (mauvaise idée).
  • Tout autre processus qui le met hors ligne ou un seul utilisateur, etc.?
1

font utilisateur que les fenêtres où vous exécutez la base de données sous peut accéder à la base de données, je pense que c'est le problème.

+0

+1 vous avez raison – Kimtho6

+0

Probablement pas: l'erreur indique "base de données pas là". "login failed" est un symptôme, pas la cause – gbn

Questions connexes