Habilitando SQL Authentication e o usuário “sa”

Um problema comum quando se utiliza o SQL Server é quando não é possível entrar com usuários SQL Server, exemplo o super usuário “sa”, pois durante a instalação foi configurado para Windows Authentication.

Como mencionado em um post no Fórum do MSDN: “Criei a instância, criei senha para meu login, mais quando vou entrar pela autenticação do SQL SERVER, ele dá erro, já pela da autenticação do Windows ele dá certo…”

Visto que não é possível ficar reinstalando o SQL Server, somente para trocar a autenticação de Windows Authentication para “Mixed” Authentication, segue neste post a solução para este problema.

Primeiramente é necessário entrar no SQL Server utilizando o SQL Server Management Studio. Conforme a figura abaixo, estou conectando em uma instância do SQL Server 2008 Express utilizando a autenticação Windows Authentication, mas este exemplo funciona perfeitamente no SQL Server 2005 e nas edições superiores.

090524_01

 

Após conectar, clicando com o botão direito do mouse sobre a instância do SQL Server na janela Object Explorer (Atalho F8 ou Menu “View\Object Explorer”), item Properties.

090524_02

 

Nesta nova janela, na aba (“página”) Security, altere “Server authentication” para “SQL Server and Windows Authentication mode”.

090524_03

 

Feito isso, uma janelinha informará que para esta alteração ter efeito, será necessário que o serviço do SQL Server deve ser reiniciado. Mas isso pode ser feito depois, quando for terminada a configuração dos usuários do SQL Server, então deixe para depois.

090524_04

 

Continuando na janela Object Explorer, expandindo a instância, “folder” Security\Logins, pode ser criado novos usuários do SQL Server ou seguindo o objetivo inicial deste tópico, habilitar o usuário “sa”. Conforme a figura abaixo, botão direito sobre o login “sa”, menu Properties.

090524_05

 

Na nova janela, altere o password do usuário, também é possível alterar o “idioma” e o banco de dados padrão deste usuário nesta janela, entre outras funcionalidades.

090524_06

 

Na aba (“página”) Status, clique na opção “Grant” em “Permission to connect to database engine” e “Enable” em “Login”.

090524_07

 

Outra maneira pratica de habilitar o usuário “sa” é por meio de script, exemplo:

ALTER LOGIN sa ENABLE;
GO
ALTER LOGIN sa WITH PASSWORD = 'P@ssw0rdM0del0';
GO 

Então, agora resta reiniciar o SQL Server. Para não ter que entrar nos Serviços do Windows ou SQL Server Configuration Manager ou qualquer variante como arquivos .bat ou SQL Server Surface Area.

Uma dica é clicar com o botão direito na instância do SQL Server na janela Object Explorer e “Restart”.

090524_08

 

Clique em Yes nesta próxima janelinha, para dizer que você TEM CERTEZA QUE QUER REINICIAR O SERVIÇO…

090524_09

 

Agora é só conectar com o usuário “sa” para testar.

090524_10

 

Até o próximo post!

About these ads

138 comentários sobre “Habilitando SQL Authentication e o usuário “sa”

  1. Valeu, estou comecando a usar o SQL Server, a 15 anos atras trabalhei com RDB e Oracle e logo de cara fui instalar uma aplicacao que só autenticava por SQL. Seu post está muito bem explicado. Parabens

  2. Prezado Paulo, usei sua dica (passo a passo) para alterar o acesso ao banco de dados SQL Server 2008 usuario ‘sa$’ com todo o sucesso, muito obrigado… e muita saúde pq o resto a gente consegue.

  3. Pingback: Debug de funções CLR no SQL Server « Sql From Hell.com

  4. Pessoal,

    Boa tarde,

    Minha conexão esta apenas como autenticação pelo servidor, consigo alterar para mixed mode? ou preciso reeinstalar?

    • Boa noite, se entendi bem… Você esta utilizando Windows para autenticar… Bem, então consegue alterar para mixed mode (como demonstrei no artigo), mas se você tiver problemas para criar logins/usuários ou dar acessos a eles, me procure que poderei te ajudar, ok?

  5. Pingback: Instalando o PHP no IIS 7.5 com FastCGI + SQL Server « Sql From Hell.com

  6. Caramba, eu tinha que postar aqui depois disso!

    Passei aproximadamente 6h do meu dia hoje tentando descobrir como resolver um problema na minha conexão com o banco… No meio de muitas tentativas, cheguei ao seu blog já visando resolver outra solução, e me deparei com a solução do meu problema inicial!
    Muito obrigado!

  7. Boa tarde caros colegas

    eu estou precisando de uma pequena ajuda, dá seguinte forma:

    No sql 2000 server tem uma opção de criar um login chamado help assistant ( conta de assistente de ajuda de area de trabalho remota , sendo que eu estou utilizando o SQL 2008 server e não acho esta opção para criar este login…. Eu gostaria de saber se tem mesmo esta opção no SQL 2008 server ou se foi substituido por algum outro que não tenho conhecimento…

    Resumindo: Preciso criar um login helpassistant no SQL 2008 server e não estou conseguindo, vocês poderiam me ajudar por favor…???

    Obrigado

    Att

    Kleber Marcelo

  8. Brother, é isso mesmo que estou fazendo.

    Quando instalei o SQL 2008 Express defini o moto de autenticação pelo Windows, queria alterá-lo pra “Mixed Mode” mas não está deixando.

    O que tentei fazer foi exatamente alterar as propriedades do servidor na parte de segurança, mas a mensagem que dá é que meu usuário não tem permisão para realizar tal ação.

    Sabe me dizer qual o procedimento que posso adotar além desse?

    Abraço!!!

  9. Parabéns pela explicação!!

    Eu tava doido tentando arrumar essep roblema e agora graças a vc consegui.!!1

    Muito grato

  10. Pingback: Habilitando o acesso remoto no SQL Server 2008 « Sql From Hell.com

  11. Ola amigo, que bom que tem gente que tem vc para ajudar os mais necessitados e desesperados.. rsrsrssr

    ao tentar trocar a senha do usuario sa esta aparecendo a seguinte mensagem oque acha qeu pode ser??

    TITLE: Microsoft SQL Server Management Studio
    ——————————

    Change password failed for Login ‘sa’. (Microsoft.SqlServer.Smo)

    For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.0.1600.22+((SQL_PreRelease).080709-1414+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Change+password+Login&LinkId=20476

    ——————————
    ADDITIONAL INFORMATION:

    An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)

    ——————————

    Password validation failed. The password does not meet Windows policy requirements because it is not complex enough. (Microsoft SQL Server, Error: 15118)

    For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.00.1600&EvtSrc=MSSQLServer&EvtID=15118&LinkId=20476

    ——————————
    BUTTONS:

    OK
    ——————————

    Obrigado

    Rodrigo

    • Boa tarde Rodrigo, na tela onde você informa a nova senha, desmarque a caixa de “Enforce password policy” (ou informe uma senha complexa de acordo com a política do Active Directory de sua empresa), se o problema persistir me avise.

  12. Olá de novo amigo, consegui resolver o problema do OBDC, quer dize em partes. Estranho quando tento conectar a minha instancia ele só conecta se eu colocar um PROTHEUS\PROTHEUS ou dessa forma .\PROTHEUS enquanto que antes bastava colocar apenas PROTHEUS, o que faço para arrumar essa situação e deixar como antes??

    Tenho um server 2003 rodando o SQL2005 e o nome da instancia é CALAB quando vou criar um obdc basta colocar o nome da instancia sem “.\” ou o proprio nome da instancia seguida dela mesmo.

    Isto está me complicando na hora de configurar meu soft de gestão (Microsiga Protheus) será que uma instalação do zero com tudo (default) resolveria esse problema?

    Desculpa a encomodação amigo. rsrsrsrsr

    Rodrigo

  13. Oi Paulo!

    Gostaria de te agradecer, pois assim como outro usuário, passei boa parte do meu dia tentando conectar com o sa, mas estava como Windows Authentication.

    Muito obrigada pela disposição em ajudar os outros! É por causa de pessoas como você que tenho certeza de que esse mundo vai pra frente!

  14. Vlws mesmo tava me matando pra descobrir o pq do usuário não logar… me salvou heim!!!

    Abrass Titio Soldado.

  15. Olá Paulo,
    Te agradeço muito por ter colocado esse post. Eu estava a muito tempo procurando como fazer essa modificação, porém sem sucesso. Por pouco que eu não reinstalo meu SQL Server. Essa modificação me ajudou bastante. Parabéns ! Continue assim, é muito bom ter pessoas como você que nos ajudam na internet. Abraços !

  16. na janela de conexão…nenhum nome q eu coloco ali no server Name dá certo,alguém pode me ajudar a resolver este problema?

    • Boa noite Marlon, normalmente o nome da instância é MSSQLSERVER (e ela não é informada para conectar a ela), mas é possível customizar este nome durante a instalação, como no caso do SQL Server Express “SQLEXPRESS”. Caso você não tenha customizado o nome da instância do seu SQL Server Enterprise durante a instalação, um simples “.” ou “LOCALHOST”, IP do servidor ou nome do servidor te permitirá conectar a ele.

      Caso não consiga se conectar, você pode identificar o nome da instância nos serviços do windows ou pelo SQL Server Configuration Manager, exemplo:

      SQL Server (SQLEXPRESS) se refere ao .\SQLEXPRESS
      SQL Server (Nome) se refere ao .\Nome
      e assim por diante…

      Somente com a exceção do “SQL Server (MSSQLSERVER)” ou “SQL Server (DEFAULT)” que não precisa informar o nome da instância, assim um simples “.” ou LOCALHOST bastará.

  17. Pingback: SQL Server 2011 CTP 1 – Contained Database e Usuários « SQL From Hell.com

  18. Valeu, Cara! Isso estava me matando. Acabei de instalar o Visual Studio 2010 e não conseguia fazer o login pelo usuário SA. Valeu mesmo !

  19. Ola pessoal
    Parabém pelos tutorias são simples e objetivo e faces de entende
    Pessoal estou com um problema de string de conexão segui t os passos do tutorial autentique o login as e com isto consegui me conectar da maquina cliente com o meu servidor e minha base de dados através do manegement Studio só que com o aplicativo rodando na maquina cliente não consigo mim conectar com a base de dados no servido o problema esta na string de conexão não to conseguindo acerta já recorri a vários fórum e não tive sucesso se vc tiver um exemplo de faceio entendimento e se poderem postar fico muito agradecido e mais uma vez parabém pelo fórum
    T+

  20. Sei que este post já é um pouco antigo, mas gostaria de tirar uma dúvida. COmo faço para acessar arquivos da rede(bulk insert) com o SQL Server fora do domínio. Acho que seja utilizando Trusted Connect, mas não sei como…. Agradeço se alguém ajudar.

  21. Kra vlw msm… instalei o sql server junto com o vs2008 para iniciar os estudos em c#, e agora que estou iniciando em banco, estava apanhando muito pra conseguir logar, dai tinha q usar o access…
    vlw msm…

  22. Meu caro,
    Estou precisando daquela força.
    Tenho um servidor novo R710 da Dell com o Win Server 2008 e o Sql 2008 não estou conseguindo conectar de fora no SQL. Poderia me ajuda?

    Abraço

  23. BOa Tarde
    Entao preciso de uma super ajuda.
    Estou entrando de ferias, e preciso alterar a senha do SA, queria saber como faço isso. OU
    E se tem como eu criar um usuario igual ao SA para deixar para pessoa que vai ficar no meu lugar e dai nao precisando passa para ela a senha de SA.
    Tem como fazer isso.
    Criar um tipo de admin
    com as mesmas permissoes.
    Please me ajude :D

  24. Cara, Muito Obrigado, Me ajudou bastante, Estava procurando a horas como ajeitar isso.

    Muito Obrigado Mesmo.

  25. Ola amigo, tou tentando instalar sql server 2005 no server 2003 e ta dando erro de senha SA, pra resolver eu tenho que instalar o SQL Server Management Studio 2005 ou o 2008 servi? obrigado

    • Paulo, fantástico… veja como são as coisas, vc fez um post em maio de 2009 e ainda hoje agosto de 2011 está sendo útil para muita gente!
      Obrigado, também resolveu o meu problema.

      []‘s
      Rogério

  26. cara alterei o idioma do meu usuário no banco
    agora da erro na autenticação, eu uso autenticação do windows
    tem como eu fazer alguma coisa ou so reinstalando o sqlserver?

      • não sei o q houve, mas a unica coisa q alterei foi o idioma, eu estava tentando mudar a data para o formato portugues dd/mm/aaaa e disseram q se alterasse o idioma ele ia alterar, mas deu o erro.
        então resolvi reinstalar o sql voltou a funcionar mas o problema da data ainda nao sei como resolver.

  27. Amigo Paulo R. Pereira, estou com um problema aqui onde trabalho atualmente.

    Seguinte: existe uma base de dados SQL Server 2005 (um serviço de uma empresa externa) que a máquina do helpdesk acessa via SQL Server Managent Studio 2005 (login e senha automáticos – login e password com remember password marcado), e a minha máquina (quando entrei na empresa) não tem mais a senha, e gostaria de saber como proceder para copiar o login/password da máquina do helpdesk para a minha, já me falaram que é possível, mas não encontrei nada a respeito no google e por isso peço sua ajuda.

    Agradeço antecipadmente seu tempo dispensado,

    Druid

    • Boa noite José,

      Os dados dos servidores, usuários e senhas gravados no SSMS ficam no arquivo:
      C:\Users\{Nome do Usuário}\AppData\Roaming\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin

      Se conseguir descriptografar, me explica a façanha para colocar no blog! :-)

  28. Muito obrigado pela resposta meu amigo.

    Na realidade eu não quero decriptografar a senha, eu quero apenas puxar o login/password pro meu micro, pois o SQLMS 2005 da máquina do helpdesk está com entrada automática, não precisa digitar login e senha, a minha é que precisou ser formatada e ai perdi o acesso.

    Porém o SO do helpdesk e o meu é o Windows XP e não encontrei este SQLStudio.bin no usuário do helpdesk no XP.

    Alguma sugestão agora?

    Druid°

    • Bom dia José, como te falei haveria a possibilidade de usar o SqlStudio.bin para “tentar copiar” o login/senha da entrada automática, mas sem ele, só se você ou criar um novo login ou alterar a senha do login atual.

  29. Pingback: Gerenciando o SQL Server por meio de aplicações .NET – Primeiros passos « SQL From Hell.com

  30. show o TUTO, perfeito e muito detalhado, OTIMO POST.. PARABENS AO COLEGA..

    Para mim fechou a necessidade em numero genero e grau,

    OBRIGADO!!!

    Fabio Carneiro

  31. Olá, grato pelas explicações.

    Segui os passos no SQL Express 2012. Com windows authentication eu consigo me conectar. Porém com o usuário Sa aparece o erro Falha de Login Erro 18456.

    Poderia me ajudar.

    Grato.

  32. Paulo, o seu blog é muito bom!
    Também sou profissional da área e faço questão de deixar meus elogios aqui.
    Grande trabalho o seu!
    Um abraço

  33. Pingback: Aniversário de 3 anos do SQL From Hell!! « SQL From Hell.com

  34. Ola Amigo, vi pelos comentarios que suas ajudas são muito boas, poderia me tirar uma duvida ?
    Eu queria acessar o SQL 2008 R2 pelo internet explore, e possivel? poderia me ajudar?

  35. Paulo Bom dia, preciso de uma ajuda, Tenho servidor com SQL 2008 R2 e estou tentando acessar pela minha maquina que tambem tem SQL 2008 R2
    Ja habilitei tudo que possa imaginar mas nao conecta ao outro banco.

  36. Paulo boa noite. Parabéns pelo post.
    Fique 2 dias tentando resolver este problema de autenticação, até que encontrei este post valioso.
    Obrigado, fique com Deus.

    José Cunha

  37. Paulo depois de 2 dias tentando encontrar uma solução para um erro de conexão com o sql server encontrei este seu blog ! seu tutorial foi de grande valia! lhe agradeço !

  38. Bom dia

    Estou com um probleminha, tenho um programa de RH instalado em um banco de dados sql server 2008.
    Nesse banco de encontra o usuário “sa” e a “senha”. tenho uma máquina desktop nesse software tenho que apontar para esse banco de dados. Ele diz ” SERVER ENEXISTENTE OU ACESSO NEGADO” . queria saber como faço para conectar o banco?

  39. Hi! I don’t speak your language at all, I couldn’t understand anything… because of the pictures I was able to make the changes in SQL Server and it worked!!! very well :D is your language portuguese?

  40. Paulo valeu, valeu, valeu mesmo, era isso que eu estava precisando. muito obrigado por compartilhar isso, demonstra o qual profissional vc é.

  41. hola soy de Bolivia, no se portugues pero quiero decir muchas gracias ya habia buscado todo tipo de posibilidades pero ninguna funciona ” ou brigado” muchas gracia me sivio de mucho

  42. Paulo, Meu comentário ao post é útil, eficiente e simples. Aquilo que realmente precisamos quando buscamos ajuda. *Obs: Já tinha visitado outros inúmeros blogs, sites, fóruns… Aqui resolvi meu problema de conexão. Obrigado !

  43. Boa noite Meu nome é Ezequiel e estou querendo acessar o meu servidor remotamente através do meu roteador e não estou conseguindo estou disposto a pagar para alguém configurar pra mim.
    através do ip do meu servidor dá pra acessar direto por conexão remota e fazer as configurações.
    caso interessar!

  44. Muito obrigado pelas informações, foi muito UTIL para o problemão que eu estava tentando resolver, e com essas informações consegui resolver.

Deixe uma resposta

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

Logotipo 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 )

Foto do Google+

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

Conectando a %s