2008-10-25 22 views
13

Instalé SQL Server 2005 hace algún tiempo y olvidé la contraseña de administrador que configuré durante la instalación. ¿Cómo puedo conectarme al servidor SQL ahora?Olvidé la contraseña de SQL Server

EDIT: Creo que solo permití la autenticación de servidor SQL. Iniciar sesión con seguridad integrada tampoco funciona.

+0

Sólo una aclaración, esto es ** ** no SQL Server 2005 Express que se está refiriendo, correcto? – cowgod

+0

Creo que esta pregunta pertenece a ServerFault.com – Salamander2007

+0

[Cómo restablecer la contraseña de SA en el servidor Sql] (http://www.wikihow.com/Reset-SA-Password-in-Sql-Server) –

Respuesta

0

A menos que lo configure para que solo acepte la autenticación de SQL Server, puede iniciar sesión con seguridad integrada utilizando el usuario administrador del dominio y/o máquina.

+1

No necesariamente, si el El usuario o grupo administrador local no se agregó como administrador en la instalación, esta no es una opción. Además, la Autenticación SQL por sí sola no es una opción. – RobS

28

Pruebe a ejecutar los siguientes comandos en el símbolo del sistema (suponiendo que el nombre del servidor es SQLEXPRESS):

osql -E -S .\SQLEXPRESS 
exec sp_password @new='changeme', @loginame='sa' 
go 
alter login sa enable 
go 
exit 

Una vez que haya completado estos pasos, tratamos de iniciar sesión con nombre de usuario sa y contraseña changeme.

+5

Creo que este primer comando requiere una cuenta integrada. Desde cuando lo intento, dice "Error de inicio de sesión para el usuario 'mydomain \ myuser'". –

+0

muchas gracias. + (15 caracteres) – Behrooz

+1

merci. + (15 caracteres) –

4

Muchas gracias cowgod

funciona bien. He iniciado sesión en SQL Server con el modo de autenticación de Windows. Luego se abrió una nueva ventana de consulta. Allí escribí estos dos comandos al presionar F5.

Primera corrida sp_password exec @ nuevas = 'changeme', @ loginame = 'sa'

Entonces inicio de sesión sa alter permiten

9

No es necesario pagar por cualquier reinicio herramientas para hacer esto. Inicie la instancia en modo de usuario único y puede crear un nuevo inicio de sesión con permisos sysadmin/

Consulte este Pinal Dave link.

+0

Sí, así es como lo hice: http://serverfault.com/questions/120215/user-provisioning-tool-for-sql-server-2008 – RobS

3

Si no hay otro usuario con privilegios sysadmin pero sa, SQL Server debe reiniciarse con la opción -m para el modo de usuario único. Luego puede conectarse a esta instancia de SQL Server y puede agregar otros usuarios con la función sysadmin o ejecutar exec sp_password.

Pinal de Dave explica aquí - http://blog.sqlauthority.com/2009/02/10/sql-server-start-sql-server-instance-in-single-user-mode/ - cómo agregar -m con Administrador de configuración de SQL Server: haga clic con el servicio de servidor, vaya a la pestaña Avanzado y añadir -m; (punto y coma aviso) en Parámetros de inicio.

Otra forma es dejar de instancia de SQL Server de Servicios y ejecutar manualmente desde la línea de comandos así:

"C: \ Archivos de programa \ Microsoft SQL Server \ MSSQL10.SQLEXPRESS \ MSSQL \ Binn \ sqlservr.exe "-m -sSQLEXPRESS

Tenía que hacer eso para SQL Server 2008, ya que no aparecía en SQL Server 2008 R2 Configuration Manager. La línea de comando Exect se puede encontrar en las propiedades del servicio.

+0

Pero, ¿cómo agregar otros usuarios con el rol sysadmin? – TiMr

+0

No puedo verificarlo ahora, pero recuerdo que simplemente inicia SQL Server Management Studio, se conecta a esa instancia, hace clic con el botón derecho en la instancia y elige "Agregar usuario ..." Luego, en la ventana de diálogo debe haber una casilla de verificación para el privilegio sysadmin. –

+0

Gracias, acabo de encontrarlo en los detalles http://v-consult.be/2011/05/26/recover-sa-password-microsoft-sql-server-2008-r2/ – TiMr

0

Para que estos pasos funcionen, debe ser un administrador en la casilla donde está instalado SQL Server.

  • Detener SQL Server del administrador de configuración
  • de inicio de SQL Server en modo de usuario único
  • Añadir este comando -mSQLCMD como uno de los parámetros de puesta en marcha, haciendo clic derecho en el servicio y entrar en la sección de parámetros de inicio como se muestra en la pantalla de abajo y empezar a SQL Server

    enter image description here

  • Ahora conecte a SQLSERVER de SQLCMD (co abierto mmand pronta como administrador), como a continuación:

    sqlcmd -s servername\instancename 
    

    Y correr por debajo de comando:

    USE [master] 
    GO 
    CREATE LOGIN [BUILTIN\Administrators] FROM WINDOWS WITH DEFAULT_DATABASE=[master] 
    GO 
    EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Administrators', @rolename = N'sysadmin' 
    GO 
    

    Por encima de comando agrega todos los usuarios locales como los administradores de sistemas. Usted puede cambiar esto y añadir un usuario al igual que o bien puede hacer otro administrador de sistemas de usuario y retirar BUILTIN\Administrators

  • Una vez hecho esto, es necesario parar ahora SQL Server y eliminar -mSQLCMD parámetros y reiniciar SQL Server

Referencias:
Help : I lost sa password and no one has System Administrator (SysAdmin) permission. What should I do?

Cuestiones relacionadas