logo
  • Home
  • Acerca
  • Autores
  • Faq
  • Rede
  Twitter   Feed-me! RSS!

Se tornado sysadmin em servidor SQL Server/Express local (revisado)

Colocado por Kelps Sousa na(s) categoria(s): .NET, 1, 4, 6, AR, auto, back, Banco de Dados, BI, blog, class, control, dados, Desenvolvedor, desenvolvedores, Dica, Dicas, err, Ferramenta, for, futuro, gc, Google, html, IE, if, image, instalação, int, map, menu, mg, Microsoft, News, O, on, painel, platform, problema, problemas, pt, RIA, Ria’s Geral, server, serviço, Serviços, servidor, site, SQL Server, Sun, Tema, UI, uint, Vários, Ved, Visual Studio, vs, web, window, windows, XP em 08 26th, 2010 | Sem comentários

Pouco mais de 1 mês atrás eu postei aqui no blog uma dica sobre como dar reset na senha de “sa” no SQL Express, um assunto completamente diferente dos temas que costumo abordar normalmente. Fiz aquele post principalmente para guardar a dica, caso fosse necessária novamente no futuro. O que eu não esperava era que ela seria tão necessária: Desde quando postei até agora eu já utilizei ou indiquei aquele post 7 vezes aqui no serviço.

Microsoft SQL Server

Esse assunto se tornou importante aqui devido ao fato de que agora os computadores de novos funcionarios não serão mais formatados, a não ser que a instalação anterior esteja com problemas. Como tivemos uma onda de contratações recentemente, vários computadores que estavam guardados foram disponibilizados para os novos desenvolvedores e então o problema de tornou latente.

Isso me fez ver também que meu post anterior poderia ter seu passo a passo melhorado, pois nem todos os casos são iguais e nem todos os detalhes estavam bem claros. Por isso eu decidi escrever um novo post mais claro e detalhado para ficar mais fácil para as próximas pessoas que precisarem dessa dica.

Quando o SQL Server ou SQL Express é instalado em um computador junto ou por algum outro aplicativo (Visual Studio, Web Platform Installer), o grupo de administradores local da máquina não é adicionado automáticamente ao grupo de administradores do banco de dados. Então, quando um computador muda de dono, o novo dono não consegue ter acesso admin no próprio SQL, mesmo sendo administrador local, pois apenas o usuário anterior e o “sa” estão no grupo de administradores do SQL.

O SQL e o SQL Express têm um modo de execução chamada “Single User” que serve justamente para realizar reparos na instalação. Quando o SQL está rodando em modo “Single User”, todos os administradores locais são incluídos temporáriamente como administradores do banco de dados, mesmo que ele não esteja configurado assim. Isso torna possível conectar no banco e fazer as “correções” necessárias usando o usuário logado atualmente no computador.

Abaixo tem um passo a passo para realizar a correção e reassumir controle sobre o banco de dados.

  1. Obtenha o nome do serviço da instância do SQL que você deseja reparar. O serviço do SQL Server custuma se chamar MSSQLSERVER e o do SQL Express costuma se chamar MSSQL$SQLEXPRESS. Se você não tiver certeza, pode verificar o nome do serviço indo em “Painel de Controle > Ferramentas Administrativas > Serviços” e dando um duplo clique no serviço desejado você verá o nome dele:
    Gerenciador de Serviços do Windows, com o serviço "SQL Server (SQLEXPRESS)" selecionado. Janela de propriedades do serviço "SQL Server (SQLEXPRESS)", mostrando o nome do serviço, que nesse caso é "MSSQL$SQLEXPRESS".
  2. Abra um prompt de comando em modo administrativo (“Run as Administrator” ou “Executar como Administrador”)
    Menu Iniciar, mostrando a opção "Executar como administrador" do programa "Prompt de Comando" Prompt de Comando aberto, mostrando que está sendo executado como Administrador
  3. Pare o serviço do SQL desejado executando o seguinte comando:
    NET STOP NomeDoServicoPasso1

    No meu caso, o nome do serviço seria MSSQL$SQLEXPRESS.

  4. Reinicie o serviço do SQL em modo Single User com o seguinte comando:
    NET START NomeDoServicoPasso1 /m

    A partir de agora só é possível conectar nesse banco de dados com o usuário atual.

  5. Conecte no banco de dados utilizando o SQL Server Management Studio, mas executando como Administrador do mesmo modo que foi feito com o prompt de comando. Isso é necessário pois o SQL está executando em modo Single User, então ele só aceitará conexões do usuário que iniciou o serviço.

    Menu Iniciar, mostrando o programa "SQL Server Management Studio" com a opção "Executar como administrador"

  6. No SQL Server Management Studio, execute as alterações desejadas no servidor (ex.: alteração da senha do usuário “sa”, inclusão do seu usuário no grupo “sysadmin”, inclusão do grupo de administradores local como sysadmin no SQL, etc…). Depois de feitas as alterações, feche o SQL Server Management Studio.
  7. Pare o serviço do SQL novamente, usando o mesmo comando executado no passo 3.
    NET STOP NomeDoServicoPasso1

  8. Reinicie o serviço do SQL em modo normal, executando o mesmo comando do passo 4, mas sem o parâmetro /m no final.
    NET START NomeDoServicoPasso1

  9. Pronto, pode voltar a usar seu servidor de banco de dados normalmente.

Os passos acima podem ser feitos para qualquer versão e instância de SQL Server ou SQL Express e também funcionam em versões anteriores do SQL.





Veja o post original no blog do autor aqui!  

Kelps Sousa

Escrito por Kelps Sousa @ http://kelps-sousa.blogspot.com/
Saiba mais sobre o autor na sua pagina de perfil
Outros posts do autor:
» Download dos Videos das Palestras do MIX09
» Review do Windows Phone 7
» Palestra sobre as novidades do Silverlight 5 no TDC2011/SP

Deixe um comentário



Spam Protection by WP-SpamFree

ACERCA

O que é o RedeRIA ?

O redeRIA não é nada mais que um agregador de feed's que disponibiliza o conteudo de varios blogs e autores ao redor do mundo RIA, actualmente agregamos mais de 2756 entradas vindas de 53 blogs especializados em ria’s, pelo que só fica a ganhar em assinar o feed ou seguir a comunidade no twitter.

Se acha que o seu blog ou um blog de um amigo é interessante e util para os leitores o redeRIA, faça a sua submissão aqui.

Feed: assine já
Twitter: siga-nos

GOOGLE

Votação


Deveria o RedeRia agregar conteúdo em inglês?
Ver Resultados

AUTORES


Eduardo KrausAlexandre TadashiBindableCognitiva SoluçõesDaniel LopesDaniel SchmitzDanielPedrinhaDClick TeamEbercomEdgard DavidsonElvis FernandesErko BrideeFabiel PrestesFábio Batista da SilvaFabio da SilvaFabriccio BernardesFelipe BorellaFlavia MoreiraGabriel VersalliniGabriela T. PerryIgor MusardoJanderson CardosoJoão AugustoJose Carlos FielKelps SousaLeonardo FrançaLucas MarçalLuis MessiasLuiz TarabalMario JuniorMário SantosMauro MartinsPablo SouzaPedro ClaudioreneRia BrazilriaPTRicardo CerqueiraRobson FernandesRodrigo Pereira FragaSaintBrSamuelFacchinelloSergio SouzaSilva DeveloperStefan HorochovecTech CaffeTecinforThiago BuenoVedVinícius SandimWillian ManoXAML Cast

PUBLICIDADE








Powered by Wordpress & msdevstudio.com