No se puede iniciar sesión en SQL Server en modo de usuario único

9

He estado probando todo tipo de combinaciones diferentes de marcas de inicio para SQL Server 2008 R2 Express y no puedo superar este error:

Error de inicio de sesión para el usuario 'LOCALSERVER \ Administrador'. Motivo: el servidor está en modo de usuario único. Solo un administrador puede conectarse en este momento. (Microsoft SQL Server, error: 18461)

He intentado iniciarlo en modo de usuario único por ambos -m"SQLCMD"e -m"sqlcmd"Iv'e incluso intentó iniciarlo -m"Microsoft SQL Server Management Studio - Query"y conectarme con los clientes apropiados SIEMPRE obtengo este error. Estoy 99% seguro de que nada más está robando mi conexión y cuando me conecto con SSMS me aseguro de hacer el "nuevo método de consulta de conexión" para asegurarme de que solo use 1 conexión.

¿Alguien mas ha tenido este problema? ¿Cómo lo arreglo e inicio de sesión?

Earlz
fuente

Respuestas:

16

Aquí hay una solución que acabo de encontrar para este viejo problema:

  1. Detener todos los servicios SQL
  2. Comience con -m
  3. Ejecute MSSQL Management Studio como administrador

Si no se inició como administrador (como no lo hice), recibirá el genérico que un administrador ya está conectado. En lugar de decir que no puedes conectarte porque no eres administrador.

Otro error confuso de Microsoft. Supongo que también existirá el mismo problema con un sqlcmd

Saludos

Liam

Liam Wheldon
fuente
3
Ejecutar SSMS como administrador es un punto bastante importante. No estaba funcionando para mí sin eso.
MrEdmundo
Ugg, esta ejecución como material de administración es un dolor. Ni siquiera tuve que entrar en modo -m.
Omzig
8

A pesar de que Microsoft dice lo contrario, no debe citar después de -m. Entonces, para SQLCMD, lo harías -mSQLCMD. No vi que se dijera esto en ninguna parte, así que lo documentaré aquí. Si nada más funciona, intente no citarlo.

Earlz
fuente
1
Este fue absolutamente el 100% del problema que tuve. sqlcmd funcionó inmediatamente después de esto.
hlmtre
@Earlz: No eliminar las comillas fue absolutamente, exactamente, también mi problema. (Y probablemente me salvó un día entero de trabajo, ¡gracias!)
techvslife
2

No debería haber nada después de -m. La sintaxis debería verse así:

sqlservr.exe -c -f -m 

Luego inicie sesión en la instancia con sqlcmd y realice los cambios necesarios. Si intenta utilizar SQL Server Management Studio para iniciar sesión, no podrá hacerlo, ya que SSMS requiere varias conexiones para iniciar sesión.

mrdenny
fuente
-m puede estar opcionalmente con el sufijo de un "nombre de cliente", en mi caso necesitaba que fuera sqlcmd porque otras cosas estarían tratando de conectar y robar mi conexión.
Earlz
Gracias, esta fue la respuesta correcta para mí con SQL Server 2012. Detenga / deshabilite otros servicios SQL y ejecute SSMS como administrador.
Noah Stahl
0

Acabo de tener este problema exacto y todo lo que tuve que hacer fue:

  • Detenga el servicio SQL principal para mi instancia.
  • Iniciarlo.

Reconecté el navegador SQL y funcionó nuevamente. Entonces, en lugar de intentar todos los pasos adicionales, las personas realmente deberían probar el enfoque más simple que funcione primero antes de escalar a intentos más exhaustivos.

Viaje Katastic
fuente
-3

Cambiar el Control de cuentas de usuario a Nunca notificarme resolvió el problema

Gerhard Powell
fuente
¿Por qué los votos negativos, cuando es una solución que funciona?
Gerhard Powell
Las personas que votan negativamente deberían explicar por qué esta no es una buena respuesta. De lo contrario, el voto negativo es inútil como una mala respuesta.
K_Rol