We had a really weird one today for just one database on our server that has about 350 user databases on it. We got a call from a software engineer and he couldn't access his database XXXXX and the website was also reporting connection errors. He said he was doing some data exports from the database and was getting weird issues (don't you just love those helpful technical descriptions from the users who should know better).
We signed in to SQL Server Management Studio (SSMS) and sure enough, we couldn't hit the DB either but all the other databases on the server were accessible and running fine. (scratching my head here...) The error message in SSMS was
Msg 952, Level 16, State 1, Line 1
Database 'XXXXX' is in transition. Try the statement later.
and the SQL Server Logs showed
SPID 465 - Setting database option OFFLINE to ON for database XXXXX.
When I tried to look at the Activity Monitor, it returned an error with the same message and using select * from sys.sysprocesses returned the same error message. (more head scratching here...) A quick Google search turned up several possible solutions and only one appealed to me--find and kill the offending user's SSMS session. The other option was to restart the SQL Server service--the survey says "AHHHNNNNNT".
First, I had the software engineer exit SSMS. For some reason, as soon as the user's SSMS process terminated, we could access the database and Activity Monitor. Second, I then killed all other SPID's the user had. Finally, I had our hosting operations team kill any Citrix session the user may have had open in the background. Basically, I just made sure everything was terminated for this user and then everyone was able to access the database again. My hypothesis is that the SSMS process became corrupt and this was causing the error.
Resources:
http://social.msdn.microsoft.com/forums/en-US/sqlgetstarted/thread/e779230a-87bc-4cee-b223-98a029097dc1/
http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=115305