Compartir a través de


El error 1069 se produce al iniciar SQL Server servicio

Recibe el error 1069 al iniciar el servicio de SQL Server, lo que produce un error de inicio de sesión. En este artículo se proporcionan soluciones para los eventos relacionados con el error 1069.

Versión del producto original: SQL Server
Número de KB original: 282254

Síntomas

Al intentar reiniciar Microsoft SQL Server o el Agente SQL Server, el servicio no se inicia y recibe los siguientes mensajes de error, en función de cómo intente iniciar el servicio:

  • Mediante el applet servicios:

    Windows no pudo iniciar el servicio de SQL Server en el equipo local.
    Error 1069: El servicio no se inició debido a un error de inicio de sesión.

  • Mediante un símbolo del sistema:

    Error del sistema 1069.
    El servicio no se inició debido a un error de inicio de sesión.

Es posible que encuentre mensajes con el identificador de evento 7041 o 7038 registrado en el registro de eventos del sistema.

Causa

Este problema se produce porque hay un problema con la propia cuenta de servicio o con la información que se guarda actualmente para la cuenta de servicio.

Resolución del identificador de evento 7041

La entrada con el identificador de evento 7041 en el registro de eventos del sistema puede contener el siguiente mensaje de error:

Error de inicio de sesión: no se ha concedido al usuario el tipo de inicio de sesión solicitado en este equipo.

La entrada de mensaje completa en el registro de eventos es similar a la siguiente:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7041
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as NT Service\MSSQLSERVER with the currently configured password due to the following error:
Logon failure: the user has not been granted the requested logon type at this computer.

Service: MSSQLSERVER  
Domain and account: <AccountName>

This service account does not have the required user right "Log on as a service."

User Action

Assign "Log on as a service" to the service account on this computer. You can use Local Security Settings (Secpol.msc) to do this.
If this computer is a node in a cluster, check that this user right is assigned to the Cluster service account on all nodes in the cluster.

If you have already assigned this user right to the service account, and the user right appears to be removed,
check with your domain administrator to find out if a Group Policy object associated with this node might be removing the right.

Para solucionar este problema, compruebe qué derechos de usuario se asignan a la cuenta de servicio de SQL Server.

  1. Inicie la directiva de seguridad local (Inicio -> Secpol.msc).

  2. Expanda Directiva local y, a continuación, seleccione Asignación de derechos de usuario.

  3. Compruebe que los derechos de usuario necesarios se asignan a la cuenta de servicio siguiendo las instrucciones de Privilegios y derechos de Windows. Asigne manualmente los permisos que falten.

  4. Compruebe si a la cuenta de servicio se le asignaron los permisos Deny*. Quite los permisos Deny* de la cuenta de servicio del servicio SQL y vuelva a probar.

    Por ejemplo, si a la cuenta de servicio se le asignó Denegar inicio de sesión como servicioSeDenyServiceLogonRight junto con Iniciar sesión como servicioSeServiceLogonRight, revoque el SeDenyServiceLogonRight derecho para el inicio de sesión y reinicie SQL Server.

Resolución del identificador de evento 7038

En las entradas de registro relacionadas con el identificador de evento 7038, puede encontrar los siguientes mensajes de error:

Este usuario no puede iniciar sesión porque esta cuenta está deshabilitada actualmente

La entrada de mensaje completa en el registro de eventos es similar a la siguiente:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as .\sqlsrvlogin with the currently configured password due to the following error:
This user can't sign in because this account is currently disabled.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Para solucionar este problema, use uno de los métodos siguientes en función del escenario:

  • Si SQL Server cuenta de inicio es una cuenta de usuario local en el equipo, abra *Administración de equipos (compmgmt.msc) y compruebe si la cuenta de servicio está deshabilitada en Usuarios y grupos locales. Si está deshabilitada, habilite la cuenta y reinicie el servicio SQL Server.

  • Si SQL Server cuenta de inicio es una cuenta de dominio de Windows, compruebe si la cuenta está deshabilitada en Usuarios y equipos de Active Directory. Si está deshabilitada, habilite la cuenta y reinicie el servicio SQL Server.

La contraseña del usuario debe cambiarse antes de iniciar sesión.

La entrada de mensaje completa en el registro de eventos es similar a la siguiente:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as .\sqlsrvlogin with the currently configured password due to the following error:
The user's password must be changed before signing in.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Para solucionar este problema, use uno de los métodos siguientes en función del escenario:

  • Si la cuenta de inicio de SQL Server es una cuenta de usuario local en el equipo:

    1. Abra Administración de equipos (compmgmt.msc).
    2. Seleccione Usuarios y grupos locales y , a continuación, seleccione Usuarios para buscar la cuenta.
    3. Haga doble clic en la cuenta de usuario para abrir sus propiedades.
    4. Desactive la opción Usuario debe cambiar la contraseña en la siguiente propiedad de inicio de sesión para SQL Server cuenta de inicio y presione Aceptar.
    5. Reinicie el servicio SQL Server.
  • Si la cuenta de inicio de SQL Server es una cuenta de dominio de Windows:

    1. Abra Usuarios y equipos de Active Directory en un controlador de dominio.
    2. Seleccione Usuarios en el dominio correcto.
    3. Haga doble clic en la cuenta de dominio que se usa como SQL Server cuenta de servicio para abrir sus propiedades.
    4. Vaya a la pestaña Cuenta para comprobar si el usuario debe cambiar la contraseña en el siguiente inicio de sesión habilitado. Si la opción está habilitada, desactive esta opción o inicie sesión de forma interactiva en un equipo cliente de Windows y, a continuación, establezca una nueva contraseña.
    5. Si ha cambiado la contraseña, actualice la nueva contraseña para el servicio SQL Server mediante la herramienta Administrador de configuración de SQL Server.

El nombre de usuario o la contraseña son incorrectos

Para un problema de contraseña incorrecto, la entrada de mensaje completa en el registro de eventos es similar a la siguiente:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as .\sqlsrvlogin with the currently configured password due to the following error:
The user name or password is incorrect.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Para resolver este problema, siga estos pasos:

Escenario 1: Contraseña incorrecta

La entrada del mensaje de error indica que el nombre de inicio de sesión actual o el conjunto de contraseñas es incorrecto. Para comprobar y resolver el problema, siga estos pasos:

  1. Use la runas opción para probar las credenciales de la cuenta de servicio:

    1. Abra un símbolo del sistema de Windows.

    2. Ejecute el siguiente comando:

      runas /user:<localmachine>\<SQLSerivceAccount> cmd
      
  2. Si el comando se realiza correctamente, escriba cuidadosamente las mismas credenciales en Administrador de configuración de SQL Server, Servicios, SQL Server servicio y Esta cuenta.

  3. Si se produce un error en el comando y notifica el mismo problema, debe restablecer la contraseña para el inicio de sesión de Windows.

  4. Si la cuenta de inicio de SQL Server es una cuenta de usuario local en el equipo, abra Administración de equipos (compmgmt.msc) y restablezca la contraseña del usuario local.

  5. Si la cuenta de inicio de SQL Server es una cuenta de dominio de Windows, abra Usuarios y equipos de Active Directory y actualice la contraseña de la cuenta en Usuarios. Una vez actualizadas las credenciales, vuelva a la Administrador de configuración de SQL Server, Servicios, SQL Server y escriba las mismas credenciales.

  6. Reinicie el servicio SQL Server.

    Para escribir la contraseña correcta en la cuenta de servicio de SQL Server en el equipo host SQL Server, siga los procedimientos de Servicios SCM: Cambiar la contraseña de las cuentas usadas.

Escenario 2: la marca gMSA IsManagedAccount está establecida de forma incorrecta

Si usa una cuenta de cuentas de servicio administradas (gMSA) de grupo para ejecutar el servicio SQL Server y la IsManagedAccount marca del servicio determinado se establece en false, puede recibir un identificador de evento de Service Control Manager 7038 tan pronto como el secreto almacenado en caché no sea válido.

Para identificar y resolver el problema, siga estos pasos:

  1. Compruebe que la cuenta que usa es una cuenta gMSA. Continúe solo después de confirmar gMSA.

    • Si el siguiente comando se ejecuta correctamente en la cuenta, se usa una cuenta gMSG.
    • Si se produce un error con Cannot find an object with identity: 'account', la cuenta de servicio no es una cuenta gMSA.
    Get-ADServiceAccount -Identity 'yourGmsaName' -Properties PasswordLastSet
    

    Para obtener más información, consulte Comprobación de la cuenta de gMSA.

  2. Ejecute el siguiente comando en el símbolo del sistema y compruebe el estado de IsManagedAccount. El resultado deseado es true. Si es false, continúe.

    sc qmanagedaccount <YourSQLServiceName>
    

    Ejemplo de un SQL Server SQLPROD de instancia con nombre:

    sc qmanagedaccount MSSQL$SQLPROD
    
  3. Establezca la marca en true como desee.

    sc managedaccount <YourSQLServiceName> TRUE
    

    Ejemplo de un SQL Server SQLPROD de instancia con nombre:

    sc managedaccount MSSQL$SQLPROD TRUE
    
  4. Intente volver a iniciar el servicio.

La cuenta a la que se hace referencia está bloqueada actualmente y es posible que no haya iniciado sesión en

La entrada de mensaje completa en el registro de eventos es similar a la siguiente:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as .\sqlsrvlogin with the currently configured password due to the following error:
The referenced account is currently locked out and may not be logged on to.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Para solucionar este problema, use uno de los métodos siguientes en función del escenario:

  • Si la cuenta de inicio de SQL Server es una cuenta de usuario local en el equipo:

    1. Abra Administración de equipos (compmgmt.msc) y vaya a Usuarios y grupos locales. A continuación, seleccione Usuarios.
    2. Desactive la casilla Cuenta está bloqueada para la cuenta de inicio de SQL Server en Usuarios y grupos locales y seleccione Aceptar.
    3. Reinicie el servicio SQL Server.
  • Si la cuenta de inicio de SQL Server es una cuenta de dominio de Windows:

    1. Abra Usuarios y equipos de Active Directory en el controlador de dominio.
    2. En Usuarios, haga doble clic en la cuenta de inicio de SQL Server y vaya a la pestaña Cuenta.
    3. Compruebe si la cuenta está marcada como bloqueada.
    4. Si la cuenta está bloqueada, seleccione el cuadro Desbloquear cuenta y seleccione Aceptar y establezca una contraseña segura.
    5. A continuación, use las mismas credenciales para la configuración de la cuenta de servicio de SQL Server en Administrador de configuración de SQL Server, Servicios y SQL Server.
    6. Reinicie el servicio SQL Server.

El dominio especificado no existe o no se pudo establecer contacto con

La entrada de mensaje completa en el registro de eventos es similar a la siguiente:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as xxx with the currently configured password due to the following error:
The specified domain either does not exist or could not be contacted.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Para solucionar este problema, use uno de los métodos siguientes en función del escenario:

  • Configure el inicio SQL Server para que se retrase el inicio para determinados servidores Windows, lo que garantiza que otros servicios de Windows, como NetLogon, se completen primero y SQL Server se inicie sin problemas. Esta es la configuración predeterminada del programa de instalación de SQL a partir de SQL Server 2022.

  • Si la opción de inicio retrasado no soluciona el problema del escenario, una opción alternativa es cambiar las opciones de recuperación de los servicios de SQL Server. Especifique "Reiniciar el servicio" como acción para las opciones de error. Puede realizar esta opción desde el applet Servicios de Herramientas administrativas mediante las conocidas interfaces de Service Control Manager.

    • Esta opción no se recomienda para las instancias de clúster de conmutación por error de SQL (FCI) ni los grupos de disponibilidad (AG), ya que si se establece esto, se podrían producir retrasos durante escenarios de conmutación por error automática.
  • Si ninguna de las opciones anteriores es factible, puede configurar el servicio SQL Server para que tenga una dependencia en el servicio NETLOGON mediante el siguiente comando en una consola de línea de comandos con privilegios elevados:

    sc config <YourSQLServiceName> depend=keyiso/netlogon
    

    Ejemplo de un SQL Server SQLPROD de instancia con nombre:

    sc config MSSQL$SQLPROD depend=keyiso/netlogon