Instalé SQL Server 2008 R2 en mi máquina local. Pero, no puedo crear una nueva base de datos debido a derechos (o falta de).
"PERMISO PARA CREAR BASE DE DATOS DENEGADO"
Entonces, intenté asignar los privilegios de administrador a mi inicio de sesión actual
"El usuario no tiene permiso para realizar esta acción".
También intenté crear un nuevo inicio de sesión que tuviera privilegios de administrador, pero sin suerte. ¿Cómo me concedo derechos de administrador para poder crear una base de datos? Puedo volver a instalar, pero prefiero no hacerlo.
sql
sql-server
sql-server-2008
ssms
sqlcmd
SkonJeet
fuente
fuente
Respuestas:
Sí, parece que olvidó agregarse al rol de administrador de sistemas al instalar SQL Server. Si es un administrador local en su máquina, esta publicación de blog puede ayudarlo a usar SQLCMD para ingresar su cuenta en el grupo de administradores de sistemas de SQL Server sin tener que reinstalar. Es un pequeño agujero de seguridad en SQL Server, si me preguntas, pero te ayudará en este caso.
fuente
Abra una ventana de símbolo del sistema. Si ya tiene una instancia predeterminada de SQL Server en ejecución, ejecute el siguiente comando en el símbolo del sistema para detener el servicio de SQL Server:
Ahora vaya al directorio donde está instalado el servidor SQL. El directorio puede ser, por ejemplo, uno de estos:
Descubra su directorio MSSQL e introdúzcalo
CD
como tal:Ahora ejecute el siguiente comando para iniciar SQL Server en modo de usuario único. Como
SQLCMD
se especifica, solo seSQLCMD
puede realizar una conexión (desde otra ventana del símbolo del sistema).Ahora, abra otra ventana del símbolo del sistema como el mismo usuario que inició SQL Server en el modo de usuario único anterior y, en ella, ejecute:
Y presione enter. Ahora puede ejecutar declaraciones SQL en la instancia de SQL Server que se ejecuta en modo de usuario único:
Fuente .
ACTUALIZADO No olvide un punto
ALTER SERVER ROLE [sysadmin] ADD MEMBER [<<DOMAIN\USERNAME>>];
y coma después y no agregue un punto y coma adicional despuésGO
o el comando nunca se ejecutará.fuente
ALTER SERVER ROLE
. por ejemploALTER SERVER ROLE [sysadmin] ADD MEMBER [domain\username]
GO;
al finalAdopté una base de datos SQL 2012 en la que no era un administrador de sistemas, pero era un administrador en la máquina. Usé SSMS con "Ejecutar como administrador", agregué mi cuenta NT como inicio de sesión SQL y configuré la función del servidor en sysadmin. No hay problema.
fuente
Aquí hay un script que dice poder solucionar este problema.
Obtenga derechos de administrador para su SQL Server Express local con este sencillo script
Descargar enlace al script
Nota: Deberá proporcionar el archivo BAT con un 'Nombre de instancia' (probablemente será 'MSSQLSERVER', pero es posible que no lo sea): puede obtener el valor ejecutando primero lo siguiente en la "Consola de administración de Microsoft SQL Server ":
Luego copie el resultado para usarlo cuando el archivo BAT solicite 'nombre de instancia SQL'.
fuente
Microsoft ® Windows Based Script Host
contrario, este vudú no funcionará (tenía el mío asignado a notepad.exe).Microsoft tiene un artículo sobre este tema. Lo repasa todo paso a paso.
https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/connect-to-sql-server-when-system-administrators-are-locked-out
En resumen, implica iniciar la instancia de sqlserver con
-m
como sugieren todas las otras respuestas. Sin embargo, Microsoft proporciona instrucciones un poco más detalladas.fuente
En realidad, es suficiente agregar -m a los parámetros de inicio en Sql Server Configuration Manager, reiniciar el servicio, ir a ssms y agregar la casilla de verificación sysadmin en su cuenta, luego eliminar -m reiniciar nuevamente y usar como de costumbre.
Opciones de inicio del servicio del motor de base de datos
fuente