2009-03-31 10 views
9

J'ai une application qui fonctionne depuis plusieurs mois. Heureusement, j'utilise des blocs try/catch dans mes appels de base de données, car ce matin, je reçois une alerte email de mon bloc catch qui a dit,Pourquoi SQL Server est-il passé en mode mono-utilisateur?

Message: Échec de la connexion pour l'utilisateur 'NT AUTHORITY \ NETWORK SERVICE. Raison: Le serveur est en mode mono-utilisateur. Seul un un administrateur peut se connecter à cette heure .

Source: .Net SqlClient Data Provider

données: System.Collections.ListDictionaryInternal

Je vais essayer d'accéder à l'application, et yep, vérifié que cela ne fonctionne pas.

J'ai été en mesure de bureau à distance sur le serveur et se connecter à SQL Server qui soudainement "fixé" le problème, mais je ne sais pas pourquoi cela est arrivé. ("Fixe" comme dans l'application fait maintenant ses opérations CRUD normales.)

Est-ce que quelqu'un sait pourquoi cela est peut-être arrivé spontanément?

De même, si je vais dans la base de données -> properties -> options -> State, j'ai vérifié que Restrict Access est dans "MULTI_USER".

L'application est alimentée par le puissant SQL Server 2005 Express. Est-ce le problème?

Répondre

9

Avez-vous vérifié vos journaux d'événements Windows pour voir si quelque chose est arrivé au serveur? A-t-il redémarré après l'installation des mises à jour?

+0

Vous avez un administrateur système fou qui ne m'a pas laissé savoir ce qui se passait. Juste vérifié l'observateur d'événements et vu que c'est exactement ce qui se passait. Merci de m'avoir aidé à vérifier ce qui se passait! – Anjisan

+0

@Anjisan: si exactement ce qui est arrivé? – Sung

+0

@Sung Meister: Selon l'Observateur d'événements (système) sur le serveur, il appliquait des mises à jour qui comprenaient l'arrêt/démarrage de SQL Server. Aurait été agréable de savoir à l'avance. Je n'avais aucune idée qu'il le faisait. Bonne chose que j'ai utilisé try/catch et la journalisation des erreurs. – Anjisan

Questions connexes