Perdi a senha do SA do SQL Server, e agora?

É… faz tempo que não publico nada por aqui.

Acreditem se quiserem mas este post possui rascunho de mais de 1 ano. Queria testa-lo ao máximo e apresentar o maior número de ilustrações possíveis mas infelizmente já não possuo o mesmo tempo que há 1 atrás rsrs. Estarei atualizando ele o mais rápido possível e principalmente dependendo do número de visualizações. Vamos lá…

Perdi a senha do sa do SQL Server, e agora?

Em muitos ambientes o controle dos usuários com permissões de sysadmin são restritas a uma pessoa (DBA?) ou algumas pessoas. Esse cenário é o recomendado, já que o privilegio de sysadmin permite a execução de qualquer atividade dentro do SQL Server e até mesmo fora dele (Windows?). Mas o que fazer se você perder/esquecer a senha do usuário de sysadmin? Seja em uma maquina de teste ou em um servidor de produção.

Vale ressaltar que o processo aqui descrito é de alteração da senha do usuário sysadmin, seja o sa ou algum outro usuário criado. O SQL Server criptografa a senha antes de armazena-la e você não terá acesso a senha anterior, pelo menos não de forma nativa e/ou por meios normais; a não ser o SQL Server 2000 ou 2005 conforme demonstrado no item 5.

* A opção 4 muitas vezes é a mais rápida, pratica e/ou ideal. 😉

 

 

1. Você possui login/senha de outro usuário que também é sysadmin. * Testado! Sempre funciona!

Fácil! Conecte-se com o usuário sysadmin a instancia de SQL Server e altere a senha utilizando o comando correspondente a sua versão de SQL Server.

SQL Server 2000
ou
SQL Server 2000

SQL Server 2005 até SQL Server 2014

 

 

2. Você possui login/senha de outro usuário que é securityadmin. * Testado! Sempre funciona!

Fácil! Conecte-se com o usuário securityadmin a instancia de SQL Server e altere a senha utilizando o comando correspondente a sua versão de SQL Server.

SQL Server 2000
SQL Server 2000

SQL Server 2005 até SQL Server 2014

 

 

3. Você possui um usuário de Windows configurado como Administrador local da maquina/servidor e sua versão de SQL Server é 2005, 2008 ou 2008R2. * Testado! Sempre funciona!

– Nessa opção você terá que realizar um stop/start do SQL Server.


Troubleshooting: Connecting to SQL Server When System Administrators Are Locked Out

 

 

4. Todas as opções acima falharam e sua versão de SQL Server é 2005, 2008, 2008R2 ou 2012.
Nessa opção você realiza um “truque” usando uma ferramenta externa para execução do SSMS no contexto da conta de serviço “SYSTEM”. Quase que um “hack”. * Testado! Sempre funciona!

Recover Access To a SQL Server Instance

Se você tiver dificuldade com inglês. Olha só o resumo:
– Baixa a ferramenta oficial da Microsoft: PsExec
– Por linha de comando você executa o SQL Server Management Studio, exemplo:

 PsExec -s -i "C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\Ssms.exe"

– Logue-se no seu SQL Server como se fosse o usuário “SYSTEM”

 

 

5. Meu SQL Server é 2000 ou 2005. * Testado! Não consegui reproduzir ainda.

Essa opção é a única que irá exibir a senha do usuário. O pré-requisito é que deva existir uma conexão ativa do usuário que deseja descobrir a senha com o SQL Server e este usuário seja do SQL Server (não Windows). Lembrando que pode funcionar ou não dependendo do Service Pack e/ou HotFix.

On The Topic Of Lost SA Passwords On SQL Server 2000

Eae? Ajudou? Conseguiu?

Esse post foi publicado em SQLServer e marcado , , , , , , , , , , , , , , . Guardar link permanente.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s