Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este tema se describe cómo recuperar el acceso al 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 uno de los siguientes motivos:
Todos los inicios de sesión que son miembros del rol fijo de servidor "sysadmin" se han eliminado por error.
Todos los grupos de Windows que son miembros del rol de servidor fijo "sysadmin" se han quitado por error.
Las cuentas que pertenecen al rol fijo de servidor sysadmin son de personas que han dejado la empresa o que no están disponibles para ejercer sus funciones.
La cuenta sa está deshabilitada o nadie conoce la contraseña.
Una manera en la que puede recuperar el acceso es volver a instalar SQL Server y adjuntar todas las bases de datos a la nueva instancia. Esta solución consume mucho tiempo; y, para recuperar los inicios de sesión, podría requerir la restauración de 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, es posible que no tenga toda la información. Si la copia de seguridad de la base de datos maestra es más reciente, es posible que tenga los mismos inicios de sesión que la instancia anterior; por lo tanto, los administradores seguirán estando bloqueados.
Resolución
Inicie la instancia de SQL Server en modo de usuario único mediante las opciones -m o -f . Cualquier miembro del grupo administradores local del equipo puede conectarse a la instancia de SQL Server como miembro del rol fijo de servidor sysadmin.
Nota:
Al iniciar una instancia de SQL Server en modo de usuario único, detenga primero el servicio agente SQL Server. De lo contrario, el Agente SQL Server puede conectarse primero e impedir que se conecte como segundo usuario.
Al usar 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 sola conexión y esa conexión debe identificarse 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".
Importante
No use esta opción como 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 paso a paso sobre cómo iniciar SQL Server en modo de usuario único, vea Configurar opciones de inicio del servidor (Administrador de configuración de SQL Server).
Instrucciones del pasoBy-Step
En las instrucciones siguientes se describe el proceso para conectarse a SQL Server 2014 que se ejecuta en Windows 8 o posterior. Se proporcionan pequeños ajustes para versiones anteriores de SQL Server o Windows. Estas instrucciones deben realizarse mientras inician sesión en Windows como miembro del grupo de administradores locales y asumen que SQL Server Management Studio está instalado en el equipo.
En la página 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, a continuación, haga clic en Registrar servidores locales).
En el área Servidores registrados, haga clic con el botón derecho en el servidor y, a continuación, haga clic en Administrador de configuración de SQL Server. Esto debe solicitar permiso para ejecutarse como administrador y, a continuación, abrir el programa de Configuration Manager.
Cierre Management Studio.
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, a continuación, haga clic en Propiedades.
En la pestaña Parámetros de inicio, en el cuadro Especificar un parámetro de inicio , escriba
-my, a continuación, haga clic enAdd. (Es un guion y a continuación una letra m minúscula).Nota:
En algunas versiones anteriores de SQL Server no hay ninguna pestaña Parámetros de inicio . En ese caso, en la pestaña Avanzadas , haga doble clic en Parámetros de inicio. Los parámetros se abren en una ventana muy pequeña. Tenga cuidado de no cambiar ninguno de los parámetros existentes. Al final, agregue un nuevo parámetro
;-my, a continuación, haga clic enOK. (Es un punto y coma, después un guion y a continuación una letra m minúscula).Haga clic en
OKy después del mensaje para reiniciarlo, haga clic con el botón derecho en el nombre del servidor y, a continuación, haga clic en Reiniciar.Una vez que SQL Server haya reiniciado el servidor estará en modo de usuario único. Asegúrese de que el Agente SQL Server no esté ejecutándose. Si se inicia, tomará tu única conexión.
En la pantalla de inicio de Windows 8, haga clic con el botón derecho en el icono de Management Studio. En la parte inferior de la pantalla, seleccione Ejecutar como administrador. (Esto pasará las credenciales de administrador a SSMS).
Nota:
Para 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.
Conéctese con el Explorador de objetos mediante la autenticación de Windows (que incluye las credenciales de administrador). Expanda Seguridade Inicios de sesióny 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 .OKEn 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 manera si no se ha conectado con el Explorador de objetos). Ejecute código como el siguiente para agregar un nuevo inicio de sesión de autenticación de Windows que sea miembro del
sysadminrol fijo de servidor. El ejemplo siguiente agrega un usuario de dominio denominadoCONTOSO\PatK.CREATE LOGIN [CONTOSO\PatK] FROM WINDOWS; ALTER SERVER ROLE sysadmin ADD MEMBER [CONTOSO\PatK];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 de autenticación de SQL Server que sea miembro del
sysadminrol fijo de servidor.CREATE LOGIN TempLogin WITH PASSWORD = '************'; ALTER SERVER ROLE sysadmin ADD MEMBER TempLogin;Advertencia
Reemplace ************ por una contraseña segura.
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 consulta por medio de la autenticación de Windows (que incluye sus credenciales de administrador). Cambie la contraseña de la cuentasacon la siguiente sintaxis.ALTER LOGIN sa WITH PASSWORD = '************';Advertencia
Reemplace ************ por una contraseña segura.
Ahora, los pasos siguientes vuelven a cambiar SQL Server al modo multiusuario. Cierre SSMS.
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, a continuación, haga clic en Propiedades.
En la pestaña Parámetros de inicio , en el cuadro Parámetros existentes , seleccione
-my, a continuación, haga clic enRemove.Nota:
En algunas versiones anteriores de SQL Server no hay ninguna pestaña Parámetros de inicio . En ese caso, en la pestaña Avanzadas , haga doble clic en Parámetros de inicio. Los parámetros se abren en una ventana muy pequeña. Quite el
;-melemento que agregó anteriormente y, a continuación, haga clic enOK.Haga clic con el botón derecho en el nombre del servidor y, a continuación, haga clic en Reiniciar.
Ahora debería poder conectarse normalmente con una de las cuentas que ahora es miembro del sysadmin rol fijo de servidor.
Véase también
Iniciar SQL Server en modo Single-User
Opciones de inicio del servicio de motor de base de datos