Saltar al contenido

Diario de un DBA

Problemas y soluciones para SQL Server

Menú
  • Inicio
  • Consultoria gratuita
  • tempdb
  • Curso Azure DP-300
  • Rendimiento
  • Seguridad
  • Sobre Mi
Menú

Recuperar la password de la cuenta SA en SQL Server

Publicada el octubre 5, 2024octubre 5, 2024 por solracamo

Contenido del post:

Toggle
  • Cómo acceder a una instancia SQL Server como administrador sin tener permisos
    • Cambiar los parámetros de inicio de la instancia SQL Server a modo single user
    • Conectarnos a la instancia SQL Server usando linea de comando CMD
    • Devolver la instancia SQL Server al modo de inicio multi-user
    • Nos conectaremos a la instancia con la cuenta SA o con el nuevo login
  • ¿Todavía tienes dudas?

Esta semana he tenido un caso bastante curioso y, gracias a dios, poco común.

Uno de nuestros clientes nos pidió ayuda con una de sus instancias de SQL Server ya que habían perdido la contraseña de su cuenta SA y no tenían ningún otro login que tuviera permisos de sysadmin, por lo que no podían ejecutar casi ninguna tarea en la instancia. Mi mensaje fue bastante claro: recuperar este acceso no es algo que debiera ser fácil, y lo más probable es que tuvieran que hacer una migración a una nueva instancia donde sí tuvieran los permisos necesarios.

Investigando más en profundidad, descubrí que había algunas opciones para acceder a la instancia como administrador pese a no tener estos permisos y, después de probar varias opciones, una de ellas funcionó.

Cómo acceder a una instancia SQL Server como administrador sin tener permisos

Primero de todo, para que sea necesario tener que hacer esto y además funcione se tienen que cumplir los siguientes requisitos:

  • No tener acceso a la cuenta SA ni a ningún login con permisos sysadmin
  • Tener acceso al servidor donde se encuentra la instancia con permisos de administrador sobre el servidor
  • Tener el permiso del cliente para reiniciar los servicios SQL y cambiar el modo a single-user mode.
  • Tener suerte: No puedo garantizar que esto funcione para todas las versiones de SQL Server ya que la seguridad ha ido cambiando a lo largo de los años.

Si cumplimos con todos estos requisitos, vamos con la magia.

Cambiar los parámetros de inicio de la instancia SQL Server a modo single user

Esto es facilito, nos vamos a SQL Server configurator manager, hacemos click derecho sobre los servicios de la instancia y añadimos el -f en los parámetros de arranque.

Nota: Para que este cambio se aplique es necesario reiniciar los servicios.

Conectarnos a la instancia SQL Server usando linea de comando CMD

Abriremos una consola (CMD) como administrador (botón derecho > abrir como administrador) y nos conectaremos usando la siguiente orden:

SQLCMD -SnombreInstancia

Si hemos tenido suerte, nos habremos conectado y ahora podremos ejecutar querys sql con permisos de administrador. En este caso vamos a habilitar la cuenta SA y también crearemos un nuevo login con permisos de administrador.

Devolver la instancia SQL Server al modo de inicio multi-user

Aquí revetiremos el cambio que hicimos al principio, retiramos el -f y reiniciaremos los servicios de nuevo.

Nos conectaremos a la instancia con la cuenta SA o con el nuevo login

Si todo ha salido bien, ya tendremos la cuenta SA desbloqueada o también podremos conectarnos con el nuevo login que hemos creado.

Como digo, no es algo que pueda garantizar que te vaya a funcionar pero que en mi caso lo ha hecho y la verdad que no tenia muchas esperanzas…

Si te ha funcionado, me alegro mucho. Si no, suerte con tu migración.

¿Todavía tienes dudas?

Si este post no ha solucionado tu problema o todavía tienes dudas sobre este o cualquier otro asunto relacionado con SQL Server, puedes enviarme un mensaje o solicitar una consultoría gratuita haciendo clic aquí.

2 comentarios en «Recuperar la password de la cuenta SA en SQL Server»

  1. Luis dice:
    diciembre 23, 2024 a las 10:56 pm

    Esta muy interesante este POST, ¡¡¡lo puse a prueba y sorpresa!! me funciono, pero tuve un detalle y es que la Instancia no tenía habilitada la opción de conectarse por medio de SQL Server Authentication, estaría genial si pudieras compartir si se puede desde el CMD cambiar la configuración de la Instancia en caso de no tenerla seleccionado, te comparto una imagen de lo que me refiero, Saludos!

    Responder
    1. solracamo dice:
      diciembre 23, 2024 a las 11:11 pm

      Buenas Luis,

      Lo primero de todo me alegro mucho que te haya funcionado aunque sea parcialmente.

      Respecto a tú otra consulta, una vez que estés conectado a la instancia puedes ejecutar cualquier query por lo que sí, puedes cambiar el modo de autenticación de «Sólo Windows» a «Mixed mode (SQL Logins y cuentas de windows)». Lo digo un poco de memoria pero creo que tendrias que ejecutar lo siguiente:

      USE [master]
      GO
      EXEC xp_instance_regwrite N’HKEY_LOCAL_MACHINE’,
      N’Software\Microsoft\MSSQLServer\MSSQLServer’, N’LoginMode’, REG_DWORD, 2
      GO

      Quizás tengas que cambiar algo de la ruta, ya me dirás si te ha funcionado.

      Un saludo.

      Responder

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Consultoria Gratis

¿Tienes un problema o una consulta sobre tu servidor SQL Server? ¿Necesitas hacer algún tipo de mantenimiento o tarea en tu instancia, pero no tienes claro cómo hacerlo?

Envíame un email con tu caso y te contestaré lo antes posible de forma totalmente gratuita.

Puedes utilizar el formulario que encontrarás haciendo click aquí.

Sobre mi

Efectivamente, soy un muñeco de slack con la camiseta de Fernando Alonso en Renault, pero también soy una DBA mid level que vive y trabaja en inglaterra como consultor SQL Server.

El objetivo de este blog es escribir los problemas con los que me he ido encontrando y cómo los solucioné. Si estas soluciones han servido para mí, es posible que también lo hagan para ti, ¿no?

Otras soluciones

  • Recuperar la password de la cuenta SA en SQL Serveroctubre 5, 2024
  • Always On en SQL Server. Todo lo que necesitas saberagosto 24, 2024
  • Recuperar una tabla borrada en SQL Serveragosto 18, 2024
  • Mover bases de datos a otro disco en SQL Serveragosto 11, 2024
  • Comprobar los últimos backups tomados en una instancia SQL Serverjunio 29, 2024
  • Comprobar fragmentación en SQL Serverjunio 23, 2024

Curso Azure DP-300 Gratis

  • Azure DP-300 curso en Español – Parte 1noviembre 17, 2022
  • Crear una máquina virtual con SQL server en Azurenoviembre 17, 2022
  • Crear un servidor SQL Server en Azure.noviembre 22, 2022
  • Azure DP-300 curso en Español – Parte 2noviembre 24, 2022
  • Azure DP-300 curso en Español – Parte 3diciembre 1, 2022
  • Azure DP-300 curso en Español – Parte 4diciembre 14, 2022

Consulta las páginas que nadie consulta:
Privacidad
Cookies

Escríbeme!
Contacto

© 2025 Diario de un DBA
x