Eu tenho uma instância do SQL Server 2008 em execução. Infelizmente durante o teste, cancelei a seleção dos direitos sysadmin para o meu login e agora não consigo lê-lo (porque não tenho direitos sysadmin).
Não há outras contas sysadmin para a instância, exceto SA.
Fui configurada apenas para autenticação do Windows, então, hackeei o LoginMode no registro para 2, para poder fazer login como SA usando a autenticação SQL. Isso realmente define o modo de login como Misto, no entanto, o usuário do SA está desativado por padrão e não posso reativá-lo porque não tenho direitos de administrador de sistema.
Como habilito o login do SA para que eu possa entrar e reatribuir o sysadmin à minha conta normal? Também existe uma configuração de registro para isso ou ela é armazenada no banco de dados mestre?
Existe um backdoor real no SQL Server que não requer reiniciar e / ou reiniciar nada no modo de usuário único. Eu fiz isso em sistemas onde eu não tinha acesso, mas precisava verificar as coisas.
Faça o download das ferramentas PSexec aqui . Coloque isso no servidor e, em um prompt de comando, execute este comando:
psexec -i -s SSMS.exe
ou sqlwb.exeIsso abrirá o SSMS como a conta do sistema que possui acesso sysadmin à instância do SQL Server. Isso é feito durante a instalação do SQL Server, no entanto, ouvi dizer que isso não acontecerá com o SQL 2012.
fonte
O SQL Server 2008 é diferente do SQL Server 2005, pois os administradores locais não herdam mais a função de servidor fixa sysadmin.
Quando o SQL Server 2008 é instalado, solicita que você designe uma conta a ser adicionada à função sysadmin. Se você receber a caixa após a instalação do software, isso não ajudará muito.
Felizmente, a Microsoft preservou a funcionalidade de 2005 quando o SQL Server está sendo executado no modo de usuário único. Aqui está o que você faz:
fonte
Essa é uma ótima pergunta e alguém estará nessa situação e precisará de um resgate.
Todo o crédito vai para codykonior
O script abaixo iterará os serviços do SQL Server e o adicionará à função sysadmin onde quer que você esteja ausente:
fonte
Você ainda pode criar um logon com acesso 'sysadmin'. Os agradecimentos ao Principal Data Engineer da Microsoft (Saleem Hakani) criaram as Dicas e Truques do SQL Server abaixo.
Descobri isso enquanto eu estava preso em um estado semelhante quando esqueci a senha sa da minha máquina de teste.
Link: https://blogs.technet.microsoft.com/sqlman/2011/06/14/tips-tricks-you-have-lost-access-to-sql-server-now-what/
Aqui estão as etapas que você precisará executar:
No prompt de comando, digite: SQLServr.Exe –m (ou SQLServr.exe –f)
Nota: Se a pasta Binn não estiver no seu caminho ambiental, você precisará navegar até a pasta Binn.
(Geralmente, a pasta Binn está localizada em: C: \ Arquivos de Programas \ Microsoft SQL Server \ MSSQL10.MSSQLSERVER \ MSSQL \ Binn)
SQLCMD –S
Agora você estará conectado ao SQL Server como administrador.
Para criar um novo logon e adicionar esse logon à função de servidor SYSADMIN:
1> CREATE LOGIN '' com PASSWORD = ''
2> ir
1> SP_ADDSRVROLEMEMBER '', 'SYSADMIN'
2> ir
Para adicionar um logon existente à função de servidor SYSADMIN, execute o seguinte:
1> SP_ADDSRVROLEMEMBER '', 'SYSADMIN'
A operação acima cuidará da concessão de privilégios SYSADMIN para um logon existente ou para um novo logon.
fonte
Você pode fazer o seguinte:
1) Crie uma conta de usuário do Windows com privilégios administrativos
2) Entre no Windows com a nova conta administrativa
3) Abra o Sql Server Mangement Studio usando a autenticação do Windows
4) Agora você está logado no SQL Server como sysadmin, portanto você pode criar novas contas ou atualizar o usuário sa
fonte