18456: Login failed for user (error de inicio de sesión del usuario)
SQL Server¿Qué significa?
Se rechazó un intento de inicio de sesión durante la autenticación. El nombre de usuario/contraseña puede ser incorrecto, la cuenta puede estar deshabilitada o el usuario puede no tener acceso a la base de datos.
¿Por qué ocurre?
Contraseña incorrecta, login inexistente, cuenta deshabilitada/bloqueada, uso de un login de SQL cuando solo está habilitada la autenticación de Windows o sin acceso a la base de datos predeterminada. El código State del texto del error identifica la causa real (State 5: el login no existe, State 7: login deshabilitado y además contraseña incorrecta, State 8: contraseña incorrecta (lo más común), State 18: la contraseña debe cambiarse, State 38: no se puede abrir la base de datos indicada, State 58: intento de login de SQL con el servidor en modo de autenticación solo Windows).
Cómo solucionarlo
Encuentre la causa raíz a partir del valor State en el error log de SQL Server (por seguridad, los detalles no se envían al cliente). Verifique el nombre de usuario/contraseña. Compruebe que el servidor funcione en 'SQL Server and Windows Authentication Mode' (modo mixto); si lo cambió, reinicie el servicio. Verifique el mapeo de usuario del login y el permiso de acceso en la base de datos de destino.
Más entradas de este motor
- 2627Violation of PRIMARY KEY / UNIQUE KEY constraint. Cannot insert duplicate key in object (violación de restricción PRIMARY KEY / UNIQUE KEY; clave duplicada)
- 2601Cannot insert duplicate key row in object with unique index. The duplicate key value is ... (fila con clave duplicada en un índice único)
- 547The INSERT/UPDATE/DELETE statement conflicted with the FOREIGN KEY / CHECK constraint (la sentencia entró en conflicto con la restricción FOREIGN KEY / CHECK)
- 8152String or binary data would be truncated (los datos de cadena o binarios se truncarían)
- 2628String or binary data would be truncated in table, column ...; truncated value (los datos se truncarían en la tabla y columna indicadas)
- 1222Lock request time out period exceeded (se superó el tiempo de espera de la solicitud de bloqueo)
- 9002The transaction log for database is full due to ... (el log de transacciones de la base de datos está lleno)