13

I've been trying all sorts of different combinations of startup flags to SQL Server 2008 R2 Express and I can not get past this error:

Login failed for user 'LOCALSERVER\Administrator'. Reason: Server is in single user mode. Only one administrator can connect at this time. (Microsoft SQL Server, Error: 18461)

I've tried starting it up in Single User mode by both -m"SQLCMD" and -m"sqlcmd" and Iv'e even tried to start it up with -m"Microsoft SQL Server Management Studio - Query" and connecting with the appropriate clients I ALWAYS get this error. I'm 99% sure that nothing else is stealing my connection and when connecting with SSMS I make sure to do the "new query-connect` method to ensure it only uses 1 connection.

Has anyone else had this problem? How do I fix it and login?

8 Answers 8

18

Here's a solution I just found to this old issue:

  1. Stop all SQL services
  2. Start with -m
  3. Run MSSQL Management Studio As administrator

If not started as administrator (as I wasn't), then you'll receive the generic an admin is already connect. Instead of saying you can't connect because you aren't an administrator.

Another confusing error from Microsoft. I suppose the same issue will exist with a sqlcmd too

Regards

Liam

2
  • 4
    Running SSMS as Administrator is quite an important point. It wasn't working for me without that.
    – MrEdmundo
    Oct 20, 2014 at 12:38
  • Ugg, this run as admin stuff is a pain. i didn't even have to go into -m mode.
    – Omzig
    Jan 31, 2019 at 15:51
13

Despite Microsoft saying otherwise you shouldn't quote after the -m. So for SQLCMD, you'd do -mSQLCMD. I didn't see this said anywhere, so I'll document it here. If nothing else works, try not quoting it.

3
  • 1
    This was absolutely 100% the problem I had. sqlcmd worked immediately after this.
    – hlmtre
    Feb 9, 2016 at 22:54
  • @Earlz: Failing to remove the quote marks was absolutely, exactly, entirely my problem as well. (And probably saved me a whole day of work—thank you!)
    – techvslife
    Oct 1, 2019 at 6:10
  • 1
    And apparently it must be SQLCMD not sqlcmd.
    – RonJohn
    Jul 10, 2020 at 2:20
4

There should't be anything after -m. The syntax should look like:

sqlservr.exe -c -f -m 

You then log into the instance using sqlcmd and make the needed changes. If you try to use SQL Server Management Studio to log in you won't be able to as SSMS requires several connections to log in.

2
  • -m can be optionally suffixed by a "client name", in my case I needed it to be sqlcmd because other things would be trying to connect and steal my connection.
    – Earlz
    Dec 6, 2011 at 20:55
  • Thanks, this was the right answer for me with SQL Server 2012. Stop/disable other SQL services, and run SSMS as administrator.
    – Noah Stahl
    Nov 24, 2014 at 4:02
1

I just had this exact problem and all that I had to do was:

  • Stop the main SQL service for my instance.
  • Start it.

I reconnected SQL browser and it worked again. So instead of trying all the extra steps, people should really try the simplest approach that works first before escalating to more thorough attempts.

1
  • Yep, this was the fix for a colleague with a recently installed SQL Server.
    – mwardm
    Dec 10, 2020 at 10:25
0

After setting parameter -m on SQL Server Configuration Manager restart SQL Server Service ,and then run ssms as administrator then it will work 100 percent.

0

(old Post but I suffered same issue today) Found the solution and how strange it was. Issue is that you need to use capitals:

Window 1:
sqlservr.exe -c -f -mSQLCMD

Window 2:

SQLCMD -E -S .\SQLINSTANCE

(and the word SQLCMD needs to be in capitals!)

Tom

0

Here's a solution I just found to this old issue:

  • Stop all SQL services
  • Start SQl Server service with -m
  • Run MSSQL Management Studio As administrator
  • Now, add your windows login into Security->Logins
  • Close MSSQL Management Studio
  • Remove -m startup parameter
  • Restart SQL Server service
  • Now login to MSSQL Management Studio

And your windows login should work

-3

Changing User Account Control to Never Notify resolved the issue for me

3
  • Why the downvotes, when it is a solution that works? Aug 18, 2017 at 21:17
  • People downvoting should explain why this is not a good answer. Otherwise the downvote is a useless as a bad answer.
    – K_Rol
    Oct 27, 2017 at 15:25
  • I didn't downvote but the answer doesn't explain how updating UAC in Windows was related, or why it was attempted. Same thing if I were to say "I ate a pizza and it worked", except in this case it's more like "I ate a pizza in the middle of the highway and it worked" since modifying UAC is a potential security risk for an application issue. At the core, changing UAC to never notify basically makes you an admin, which might be the real issue, but instead of doing that, you're really bringing all of the shields down. If someone follows this they are worse off.
    – Dan Chase
    Aug 12, 2021 at 15:54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .