Conectarse a SQL Server cuando los administradores del sistema no tienen acceso

 

En este tema se describe cómo puede recobrar el acceso a Motor de base de datos de SQL Server como administrador del sistema. Un administrador del sistema puede perder el acceso a una instancia de SQL Server debido a una de las razones siguientes:

  • Por equivocación se han quitado todos los inicios de sesión que son miembros del rol fijo de servidor sysadmin.

  • Por equivocación se han quitado todos los grupos de Windows que son miembros del rol fijo de servidor sysadmin.

  • Los inicios de sesión que son miembros del rol fijo de servidor sysadmin son para individuos que han dejado la compañía o no están disponibles.

  • La cuenta sa está deshabilitada o nadie conoce la contraseña.

Una manera de recobrar el acceso es reinstalar SQL Server y adjuntar todas las bases de datos a la nueva instancia. Esta solución requiere mucho tiempo y, para recuperar los inicios de sesión, podría ser necesario restaurar la base de datos maestra a partir de una copia de seguridad. Si la copia de seguridad de la base de datos maestra es anterior, podría no tener toda la información. Si es más reciente, podría tener los mismos inicios de sesión que la instancia anterior; por consiguiente, los administradores aún no tendrán acceso.

Inicie la instancia de SQL Server en modo de usuario único usando las opciones -m o -f. A continuación, cualquier miembro del grupo local de administradores del equipo puede conectarse a la instancia de SQL Server como miembro del rol fijo de servidor sysadmin.

System_CAPS_ICON_note.jpg Nota


Cuando inicie una instancia de SQL Server en modo de usuario único, detenga primero el servicio del Agente SQL Server: de lo contrario, el Agente SQL Server podría conectarse primero e impedir que se conecte como un segundo usuario.

Cuando use la opción -m con sqlcmd o SQL Server Management Studio, puede limitar las conexiones a una aplicación cliente especificada. Por ejemplo, -m"sqlcmd" limita las conexiones a una conexión única y esa conexión se debe identificar como el programa cliente sqlcmd. Use esta opción cuando esté iniciando SQL Server en modo de usuario único y una aplicación cliente desconocida esté usando la única conexión disponible. Para conectarse a través del Editor de consultas en Management Studio, use -m"Microsoft SQL Server Management Studio - Query".

System_CAPS_ICON_important.jpg Importante


No use esta opción como una característica de seguridad. La aplicación cliente proporciona el nombre de la misma y puede proporcionar un nombre falso como parte de la cadena de conexión.

Para obtener instrucciones detalladas sobre cómo iniciar SQL Server en el modo de usuario único, vea Configurar opciones de inicio del servidor (Administrador de configuración de SQL Server).

Las instrucciones siguientes describen el proceso para conectarse a SQL Server 2016 que se ejecuta en Windows 8 o posterior. Se proporcionan pequeñas modificaciones para las versiones anteriores de SQL Server o de Windows. Estas instrucciones deben realizarse mientras se tiene iniciada sesión en Windows como miembro del grupo local de administradores y en ellas se da por supuesto que SQL Server Management Studio está instalado en el equipo.

  1. Desde la página de inicio, inicie SQL Server Management Studio. En el menú Ver , seleccione Servidores registrados. (Si el servidor aún no está registrado, haga clic con el botón derecho en Grupos de servidores locales, seleccione Tareas y, después, haga clic en Registrar servidores locales).

  2. En el área Servidores registrados, haga clic con el botón derecho en el servidor y, después, haga clic en Administrador de configuración de SQL Server. Se debe solicitar permiso para ejecutarse como administrador y, a continuación, abrir el programa Administrador de configuración.

  3. Cierre Management Studio.

  4. En el Administrador de configuración de SQL Server , en el panel izquierdo, seleccione Servicios de SQL Server. En el panel derecho, busque la instancia de SQL Server. (La instancia predeterminada de SQL Server incluye (MSSQLSERVER) después del nombre del equipo. Las instancias con nombre aparecen en mayúsculas con el mismo nombre que tienen en Servidores registrados). Haga clic con el botón derecho en la instancia de SQL Server y, después, haga clic en Propiedades.

  5. En la pestaña Parámetros de inicio, en el cuadro Especifique un parámetro de inicio, escriba -m y, después, haga clic en Agregar. (Es un guion y a continuación una letra m minúscula).

    System_CAPS_ICON_note.jpg Nota


    En algunas versiones anteriores de SQL Server no hay ninguna pestaña Parámetros de inicio . En ese caso, en la pestaña Opciones avanzadas, haga doble clic en Parámetros de inicio. Los parámetros se abrirán en una ventana muy pequeña. Tenga cuidado de no cambiar ninguno de los parámetros existentes. Al final, agregue un nuevo parámetro ;-m y, a continuación, haga clic en Aceptar. (Es un punto y coma, después un guion y a continuación una letra m minúscula).

  6. Haga clic en Aceptar y, después del mensaje para reiniciar, haga clic con el botón derecho en el nombre del servidor; luego, haga clic en Reiniciar.

  7. Después de que SQL Server se haya reiniciado, el servidor se encontrará en modo de usuario único. Asegúrese de que el Agente de SQL Server no se esté ejecutando. Si está iniciado, usará su única conexión.

  8. En la pantalla de inicio de Windows 8, haga clic con el botón secundario en el icono de Management Studio. En la parte inferior de la pantalla, seleccione Ejecutar como administrador. (Esto pasará sus credenciales de administrador a SSMS).

    System_CAPS_ICON_note.jpg Nota


    En versiones anteriores de Windows, la opción Ejecutar como administrador aparece como un submenú.

    En algunas configuraciones, SSMS intentará realizar varias conexiones. Se producirá un error en varias conexiones porque SQL Server está en modo de usuario único. Puede seleccionar una de las siguientes acciones para realizar. Realice una de las acciones siguientes.

    1. Conectar con el Explorador de objetos mediante la autenticación de Windows (que incluye sus credenciales de administrador). Expanda Seguridad e Inicios de sesión y haga doble clic en su propio inicio de sesión. En la página Roles de servidor , seleccione sysadminy, a continuación, haga clic en Aceptar.

    2. En lugar de conectar con el Explorador de objetos, conectar con una ventana de consulta mediante la autenticación de Windows (que incluye sus credenciales de administrador). (Solo puede conectarse de esta forma si no se conectó con el Explorador de objetos). Ejecute código como el siguiente para agregar un nuevo inicio de sesión Autenticación de Windows que sea miembro del rol fijo de servidor sysadmin . El ejemplo siguiente agrega un usuario de dominio denominado CONTOSO\PatK.

      CREATE LOGIN [CONTOSO\PatK] FROM WINDOWS;  
      ALTER SERVER ROLE sysadmin ADD MEMBER [CONTOSO\PatK];  
      
      
    3. Si SQL Server se ejecuta en modo de autenticación mixto, conectar con una ventana de consulta mediante la autenticación de Windows (que incluye sus credenciales de administrador). Ejecute código como el siguiente para crear un nuevo inicio de sesión Autenticación de SQL Server que sea miembro del rol fijo de servidor sysadmin .

      CREATE LOGIN TempLogin WITH PASSWORD = '************';  
      ALTER SERVER ROLE sysadmin ADD MEMBER TempLogin;  
      
      
      System_CAPS_ICON_warning.jpg Advertencia


      Reemplace ************ con una contraseña segura.

    4. Si SQL Server se ejecuta en modo de autenticación mixto y quiere restablecer la contraseña de la cuenta sa, conecte con una ventana de consulta por medio de la autenticación de Windows (que incluye sus credenciales de administrador). Cambie la contraseña de la cuenta sa con la siguiente sintaxis.

      ALTER LOGIN sa WITH PASSWORD = '************';  
      
      
      System_CAPS_ICON_warning.jpg Advertencia


      Reemplace ************ con una contraseña segura.

  9. En los pasos siguientes se vuelve a cambiar SQL Server al modo multiusuario. Cierre SSMS.

  10. En el Administrador de configuración de SQL Server , en el panel izquierdo, seleccione Servicios de SQL Server. En el panel derecho, haga clic con el botón derecho en la instancia de SQL Server y, después, haga clic en Propiedades.

  11. En la pestaña Parámetros de inicio, en el cuadro Parámetros existentes, seleccione -m y, después, haga clic en Quitar.

    System_CAPS_ICON_note.jpg Nota


    En algunas versiones anteriores de SQL Server no hay ninguna pestaña Parámetros de inicio . En ese caso, en la pestaña Opciones avanzadas, haga doble clic en Parámetros de inicio. Los parámetros se abrirán en una ventana muy pequeña. Quite el parámetro ;-m que agregó anteriormente y, a continuación, haga clic en Aceptar.

  12. Haga clic con el botón derecho en el nombre del servidor y, después, haga clic en Reiniciar.

Ahora debe poder conectarse normalmente con una de las cuentas que es miembro del rol fijo de servidor sysadmin .

Iniciar SQL Server en modo de usuario único
Opciones de inicio del servicio de motor de base de datos

Adiciones de comunidad

AGREGAR
Mostrar: