Hola, chicos,
¡Buenas tardes!

En esta publicación demostraré cómo recuperar la contraseña del usuario Administrador de SQL Server (sa), si la perdió o la cambió un usuario malintencionado o si simplemente ya no recuerda la contraseña. Muchos administradores de bases de datos con menos experiencia pueden desesperarse con esta situación y recurrir a reinstalar el producto para recuperar esta contraseña y las soluciones son realmente bastante simples.

Usando SQLCMD

La primera forma de recuperar la contraseña del usuario SA es mediante SQLCMD (para obtener más información sobre SQLCMD, acceder a esta publicación).

Como siempre está presente y viene con el producto, lo considero la solución más práctica, aunque NO funciona si no se ha creado (o se ha eliminado) el inicio de sesión con el grupo de dominio, que permite conexiones mediante Autenticación de Windows (AD).

Para recuperar la contraseña, abra el símbolo del sistema de Windows (cmd) en el servidor al que se le cambiará la contraseña y escriba los siguientes comandos para conectarse a la base de datos:

sqlcmd -S <nome_do_servidor>\<instancia> -E

Después de conectarse, simplemente ejecute los siguientes comandos para cambiar la contraseña:

sp_password NULL, 'dirceu123', 'sa' -- Essa SP será removida em futuras versões do SQL Server
GO

Como sp_password estará desactivado en futuras versiones, también podemos usar el comando ALTER LOGIN para cambiar la contraseña.

ALTER LOGIN sa WITH PASSWORD = 'dirceu123'
GO

Ejemplo:

SQL Server - Reset SA Password
SQL Server: restablecer la contraseña de SA

Usando SQL Management Studio

Otra alternativa para recuperar su contraseña es iniciar sesión localmente en su base de datos a través de Management Studio usando la autenticación de Windows AD y cambiar manualmente la contraseña.

SQL Server - Local Connection Conexão Local
SQL Server: conexión local Conexión local

Ahora simplemente vaya a las opciones de seguridad y cambie la contraseña de usuario de SA (o cualquier otra contraseña de su elección)

SQL Server - Alter SA Password
SQL Server: modificar la contraseña de SA

SQL Server - Alter SA Passoword 2
SQL Server - Modificar la contraseña SA 2

No puedo conectarme usando la autenticación de Windows

Ocurre cuando no recuerda la contraseña del usuario SA, la función predeterminada de la instancia se ha eliminado y no es posible conectarse a la instancia de ninguna manera.

El primer paso es parar la instancia de SQL Server mediante Configuration Manager.

Para abrir el Administrador de configuración, simplemente ejecute el comando SQLServerManager10.msc o Inicio > Todos los programas > Microsoft SQL Server -su_versión- > Herramientas de configuración > Administrador de configuración de SQL Server

SQL Server - Configuration Manager - Stop Instance
SQL Server - Administrador de configuración - Detener instancia

Ahora iniciemos la instancia en modo de usuario único (-m) o con la configuración mínima (-f). Para hacer esto, escriba el siguiente comando en el símbolo del sistema:

cd "C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn"
SQLServr.Exe –m

Una forma alternativa de realizar esta configuración es manipulando los servicios de Windows:

net stop mssqlserver
net start mssqlserver /m

Con esto ya podrás iniciar sesión normalmente en la instancia usando el comando sqlcmd y cambiar tu contraseña, ya que el inicio de sesión se realizará con el usuario predeterminado del servidor, incluso si ha sido eliminado.

Si ha deshabilitado el acceso a la función de Administradores (generalmente la función con el mismo nombre que la instancia), es posible que no pueda iniciar sesión en la instancia incluso usando este procedimiento, pero puede probar con la solución a continuación.

Usando PsExec

PsExec, una fantástica utilidad de sysinternals, le permite ejecutar aplicaciones utilizando el usuario NT AUTHORITY\SYSTEM, que tiene acceso nativo a SQL Server.

Para realizar la recuperación de contraseña, simplemente descargue PsExec en este enlace, extraiga a una carpeta local en su servidor y ejecute los siguientes comandos en el símbolo del sistema (como administrador), donde el parámetro -s se usa para usar la cuenta del sistema, mientras que -i habilita el modo interactivo:

cd C:\PSTools
PsExec.exe -s -i "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe"

SQL Server - PsExec
Servidor SQL-PsExec

SQL Server - System Account Login
SQL Server: inicio de sesión de cuenta del sistema

Ahora simplemente cree, cambie o habilite los usuarios que necesita para administrar su instancia.

Usando software de terceros

Otra forma de recuperar rápidamente la contraseña de Administrador es utilizar software de terceros para realizar esta tarea. Generalmente esta forma de desbloqueo es la preferida por personas que manejan bases de datos SQL Server y no tienen muchos conocimientos técnicos (sí, esto sucede) y terminan optando por pagar por estas herramientas.

Cuando ya hayas probado TODAS las demás alternativas y no hayas podido recuperar (si todos los usuarios están bloqueados), puedes utilizar una de estas herramientas como opción, ya que no requiere conexión a la base de datos, ya que la herramienta actúa directamente sobre el archivo MDF de la base de datos maestra y cambia los bits obligando a cambiar la contraseña, casi un procedimiento de cracking.

Algunas de las herramientas más conocidas para ello son:
Experto en contraseñas de SQL Server
Recuperación avanzada de contraseña SQL de Elcomsoft
Desbloqueador de contraseñas de MS SQL Server

¡Eso es todo, amigos!
Hasta la próxima

cómo restablecer restablecer cambiar recuperar contraseña de administrador sa SQL Server, cómo recuperar recuperar cambiar contraseña perdida contraseña perdida PsTools PsExec

cómo restablecer restablecer cambiar recuperar contraseña de administrador sa SQL Server, cómo recuperar recuperar cambiar contraseña perdida contraseña perdida PsTools PsExec