Compartir a través de


SQL Server 2012: Emergencia con la contraseña

Si llegara a ocurrir lo impensable y olvida la contraseña de SQL Server, existen formas para volver a entrar en el sistema.

Saleem Hakani

Eres un orgullo y un DBA confianza en su organización. Usted es responsable por el mantenimiento y actualización de varios importantes servicios que se ejecutan en servidores SQL Server en su entorno de producción. Has decidido realizar los siguientes pasos, que son el tipo de las mejores prácticas que tomaría cualquier sólido DBA — proteger su empresa de servidores SQL de cualquier acceso no autorizado:

  • Cuentas de administrador integrada toda que ha quitado de inicios de sesión de SQL Server.
  • Que ha quitado todos los usuarios (excepto el administrador del sistema, o SA) que formaban parte de la función de servidor SYSADMIN (incluyendo los inicios de sesión de cuentas de Windows y SQL Server).
  • Se ha establecido la contraseña de la cuenta de SA en algo extremadamente complejo que sería duro para que cualquiera pueda adivinar o recordar.
  • Para las operaciones diarias en SQL Server, utiliza su cuenta de usuario de dominio, que tiene los permisos del propietario de la base de datos (DBO) en bases de datos de usuario no tiene privilegios de administrador en el sistema.
  • No ha documentado la contraseña de SA en cualquier lugar para evitar que otros puedan saberlo. Después de todo, no es una buena práctica para documentar la contraseña.

Porque se ha establecido la contraseña SA sea tan complejo, y ha estado utilizando su cuenta de dominio y no la cuenta SA para todos su diaria actividad relacionadas con la base de datos en SQL Server — sucedió lo impensable. Ha olvidado la contraseña de SA de SQL Server.

Fuiste la única persona que sabía la contraseña SA en su equipo. Ahora no recuerda lo que era y necesita hacer algunos cambios en la configuración de nivel de servidor para sus cajas de SQL Server de producción. ¿Qué vas a hacer ahora? A continuación se muestran algunas opciones:

  • Intente iniciar sesión como SA con todas las contraseñas posibles que tienes en tu mente.
  • Busque la contraseña en el disco duro del ordenador o en su correo electrónico (puede haber almacenado en algún archivo, que es una mala práctica, pero puede ser útil).
  • Intente restaurar el maestro de base de datos de copia de seguridad de base de datos. Esto no le ayudará en el largo plazo porque todavía te encontrarás con el mismo problema si no recuerda la contraseña de SA.
  • Reconstruir la principal base de datos. Esto es sólo marginalmente útil, perderás todas las configuraciones de nivel de servidor y de sistema y configuración, incluyendo los inicios de sesión, los permisos y los objetos de nivel de servidor.
  • Vuelva a instalar SQL Server 2012 y fijar las bases de datos de usuario. Esto puede no funcionar, como puede experimentar los mismos problemas que usted iba a experimentar con el maestro de la reconstrucción de base de datos.

Asumir todos ha fracasado su intento de iniciar sesión el sistema utilizando la contraseña de SA. Ahora es el momento para llamar a refuerzos: servicios equipo de soporte de los productos de Microsoft. Aquí es lo podrían decirles que hacer:

Esta es una puerta trasera para SQL Server 2012 que le ayudarán a obtener acceso de administrador del sistema para la producción de servidores SQL Server. Sin embargo, esto significa que su cuenta de Windows tendrá que ser miembro del grupo Administradores local en servidores de Windows donde se ejecutan servicios de SQL Server 2012.

SQL Server permite a cualquier miembro de un grupo de administradores locales de conectarse a SQL Server con privilegios de administrador del sistema.

Estos son los pasos para tomar el control de su SQL Server 2012 como una SA:

1. Iniciar la instancia de SQL Server 2012 usando el modo de usuario único de la línea de comandos con el lanzamiento de la línea de comandos como administrador. También puede iniciar SQL Server 2012 con una configuración mínima, que también pondrá a SQL Server en modo de usuario único.
2. Desde el símbolo del sistema (ejecutar como administrador), escriba: –M SQLServr.Exe (o SQLServr.exe – f) y arranque el motor de base de datos de SQL Server 2012. Asegúrese de que no se cierra esta ventana de símbolo del sistema. Puede localizar SQLServr.exe en la carpeta Binn de la ruta ambiental. Si no tienes una carpeta SQL Server 2012 Binn en su ruta ambiental, siempre puede navegar a la carpeta Binn del equipo SQL Server 2012. Generalmente la carpeta Binn se encuentra en C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn >.
3. Una vez el SQL Server 2012 inició el servicio en modo de usuario único o con una configuración mínima, ahora puede abrir otra ventana de línea de comandos como administrador y utilizar el comando SQLCMD desde la línea de comandos para conectarse a la instancia de SQL Server 2012:

SQLCMD –S <Server_Name\Instance_Name> Example: SQLCMD –S "SALEEMHAKANI"

  Ahora se registran SQL Server. Tenga en cuenta que usted ha iniciado sesión como administrador en la instancia de SQL Server 2012 de SALEEMHAKANI.
4. Una vez que ha iniciado sesión SQL Server 2012 mediante SQLCMD desde la línea de comandos, usted tiene la opción de crear una nueva cuenta y concederle los permisos de nivel de servidor. Crear un nuevo inicio de sesión en SQL Server 2012 llamado "Saleem_SQL" y luego agregar esta cuenta a la función de servidor de SA. Para crear un nuevo inicio de sesión desde el símbolo del sistema después de realizar el paso 3, utilice lo siguiente:

1> CREATE LOGIN '<Login_Name>' with PASSWORD='<Password>' 2> GO

  Aquí está un ejemplo:

1> CREATE LOGIN SQL_SALEEM WITH PASSWORD='$@L649$@m' 2> GO

  Una vez que haya creado el nuevo inicio de sesión "SQL_SALEEM", agrega este inicio de sesión a la función de servidor de SA en la instancia de SQL Server 2012. Desde la misma ventana de símbolo del sistema, ejecute la instrucción siguiente:

1> SP_ADDSRVROLEMEMBER '<Login_Name>','SYSADMIN' 2>go

  Para agregar un inicio de sesión existente a la función de servidor SYSADMIN, ejecute lo siguiente:

1> SP_ADDSRVROLEMEMBER '<LOGIN_NAME>','SYSADMIN' 2> GO

  Aquí está un ejemplo:

1> SP_ADDSRVROLEMEMBER SQL_SALEEM,'SYSADMIN' 2> GO

  La operación anterior se encargará de la concesión de privilegios de administrador del sistema para el inicio de sesión de "SQL_SALEEM".
5. Una vez que hayas realizado estos pasos, el siguiente paso es detener e iniciar los servicios de SQL Server mediante opciones de inicio normal. Esta vez no necesitará – f o –m.
6. Inicie sesión en el 2012 de SQL Server management studio. También podría iniciar sesión en desde el símbolo del sistema con la cuenta de "SQL_SALEEM" y su respectiva contraseña. Ahora tienes acceso SA a la instancia de SQL Server 2012. Ahora puede restablecer la contraseña de SA y tomar el control de la producción de cajas de SQL Server.

Es perfectamente normal que se olvide la contraseña de vez en cuando, pero eso no significa que sea menos de una molestia. Estos pasos de emergencias le deben aprender a manejar sin demasiado el revolver o el tiempo de inactividad.

Saleem Hakani

Saleem Hakani es un arquitecto principal de Microsoft con más de 18 años de experiencia. Ha trabajado con SQL Server desde 1992 y ha trabajado en numerosos servicios de Microsoft a gran escala como ingeniero y arquitecto en los últimos siete años, incluyendo Hotmail, MSN y Bing. Hakani conduce a la comunidad de SQL Server en todo el mundo para empleados de Microsoft y es una presentadora de técnica para varios eventos de Microsoft, incluyendo TechReady, SQLFEST, SQL-escuela y SQLPASS.

Contenido relacionado