Anteriormente con MS Windows 2003, o bien SQL 2005 y previos bastaba con pertenecer al grupo de administradores para poder tener acceso al motor de base de datos. A partir de la versión 2008 junto con la integración de seguridad con Windows 2008 Server y superiores no tenemos acceso al motor de base de datos a menos que se hayan recibido los permisos adecuados.
Este comentario viene a raíz de unas pruebas que habia hecho en una instancia de SQL Server, la cual instale con una cuenta local, un compañero de trabajo borro dicha cuenta y ningún otro miembro de la compañía tenia acceso a la instancia, a raiz de esto validamos las opciones, descartando el desinstalar y crear una instancia desde cero. Leyendo por la red encontramos un procedimiento que nos ayudo a poder accesar el motor de base datos y a la vez asignarle permisos de admin a una cuenta.
Requisitos:
- Ser administrador del sistema
- Tener la posibilidad de acceder a los servicios de MSSQL y detenerlos e iniciarlos a disponibilidad.
Los pasos son realmente muy sencillos:
- Para el Servicio de SQL Server. (MS SQL Service)
- Modificar los parámetros de inicio para que el motor empiece en modo de usuario único (single user mode). Para hacer esto nada mas agregaremos el parámetro -m en la cuadro de texto para los parámetros de inicio.
- Levantar una ventana de símbolo de sistema (command prompt) como administrador, en algún momento le llamábamos una ventana de DOS 😛
- Iniciar el SQLCMD, para esto agregamos la opción -s para indicar el nombre de la instancia, en caso de que sea una instancia con nombre, seguir formato [Nombre Servidor]\[Nombre Instancia]
- Una vez dentro del SQLCMD, agregar un login y asignarle permisos de administrador del sistema (sysadmin)
- Salir de SQLCMD
- Parar el servicio de MSSQL y remover el parámetro de inicio -m
- Iniciar el servicio de MSSQL
- Acceder el SSMS con la cuenta a la que le asignamos permisos anteriormente
- Asignar permisos necesarios a los usuarios que desee
Espero le sea de utilidad.
Un comentario en “Que hacer cuando no tenemos acceso a una instancia en SQL Server 2008 y mas recientes??”