Compartilhar via


Conectar-se ao SQL Server quando os administradores do sistema estão bloqueados

Este tópico descreve como você pode recuperar o acesso ao Mecanismo de Banco de Dados do SQL Server como um administrador do sistema. Um administrador do sistema pode perder o acesso a uma instância do SQL Server devido a um dos seguintes motivos:

  • Todos os logons que são membros da função de servidor fixa sysadmin foram removidos por engano.

  • Todos os Grupos do Windows que são membros da função de servidor fixa sysadmin foram removidos por engano.

  • Os logons que são membros da função de servidor fixa sysadmin são de indivíduos que deixaram a empresa ou que não estão disponíveis.

  • A conta sa está desabilitada ou ninguém sabe a senha.

Um modo para recuperar o acesso é reinstalar o SQL Server e conectar todos os bancos de dados à nova instância. Essa solução é demorada e, para recuperar os logons, talvez seja necessário restaurar o banco de dados master a partir de um backup. Se o backup do banco de dados master for mais antigo, talvez ele não tenha todas a informações. Se o backup do banco de dados master for mais recente, ele poderá ter os mesmos logons da instância anterior; portanto, os administradores ainda estarão bloqueados.

Solução

Inicie a instância do SQL Server no modo de usuário único usando as opções -m ou -f. Qualquer membro do grupo Administradores local do computador pode então se conectar à instância do SQL Server como membro da função de servidor fixa sysadmin.

ObservaçãoObservação

Ao iniciar uma instância do SQL Server no modo de usuário único, primeiro interrompa o serviço SQL Server Agent. Caso contrário, o SQL Server Agent poderá se conectar primeiro e impedir sua conexão como um segundo usuário.

Ao usar a opção -m com sqlcmd ou SQL Server Management Studio, você pode limitar as conexões a um aplicativo cliente especificado. Por exemplo, -m"sqlcmd" limita conexões a uma única conexão, e essa conexão deve se identificar como o programa cliente sqlcmd. Use essa opção quando estiver iniciando o SQL Server no modo de usuário único e se um aplicativo cliente desconhecido estiver usando a única conexão disponível. Para conectar pelo Editor de Consulta no Management Studio, use -m"Microsoft SQL Server Management Studio - Query".

Observação sobre segurançaObservação sobre segurança

Não use essa opção como um recurso de segurança. O aplicativo cliente fornece o nome do aplicativo cliente e pode fornecer um nome falso como parte da cadeia de conexão.

Para obter instruções passo a passo sobre como iniciar o SQL Server no modo de usuário único, consulte Configurar opções de inicialização do servidor (SQL Server Configuration Manager).

Instruções passo a passo

As instruções a seguir descrevem o processo de conexão ao SQL Server 2012 em execução no Windows 8. São fornecidos pequenas ajustes para as versões anteriores do SQL Server ou do Windows. Essas instruções deverão ser executadas enquanto você estiver conectado ao Windows como membro do grupo de administradores locais, e assumem que o SQL Server Management Studio está instalado no computador.

  1. Na página inicial, inicie o SQL Server Management Studio. No menu Exibir, selecione Servidores Registrados. (Se o servidor ainda não estiver registrado, clique com o botão direito do mouse em Grupos de Servidores Locais, aponte para Tarefas e clique em Registrar Servidores Locais.)

  2. Na área Servidores Registrados, clique com o botão direito do mouse no servidor e clique em SQL Server Configuration Manager. Será solicitada permissão para realizar a execução como administrador e, em seguida, o programa Configuration Manager será aberto.

  3. Feche o Management Studio.

  4. No SQL Server Configuration Manager, no painel esquerdo, selecione Serviços do SQL Server. No painel direito, localize a instância do SQL Server. (a instância padrão do SQL Server inclui (MSSQLSERVER) após o nome do computador. As instâncias nomeadas aparecem em maiúsculas com o mesmo nome apresentado na área Servidores Registrados.) Clique com o botão direito do mouse na instância do SQL Server e clique em Propriedades.

  5. Na guia Parâmetros de Inicialização, na caixa Especificar um parâmetro de inicialização, digite -m e clique em Add. (É um traço seguido da letra m minúscula.)

    ObservaçãoObservação

    Em algumas versões anteriores do SQL Server, não há nenhuma guia Parâmetros de Inicialização. Nesse caso, na guia Avançado, clique duas vezes em Parâmetros de Inicialização. Os parâmetros são abertos em uma janela muito pequena. Tenha cuidado para não alterar os parâmetros existentes. No final, adicione um novo parâmetro ;-m e clique em OK. (É um ponto-e-vírgula seguido da letra m minúscula.)

  6. Clique em OK e, após a mensagem de reinicialização, clique com o botão direito do mouse no nome do servidor e clique em Reiniciar.

  7. Depois que o SQL Server for reiniciado, o servidor estará no modo de usuário único. Verifique se o SQL Server Agent não está em execução. Se for iniciado, ele usará sua única conexão.

  8. Na tela inicial do Windows 8, clique com o botão direito do mouse no ícone do Management Studio. Na parte inferior da tela, selecione Executar como administrador. (As credenciais do administrador serão passadas para o SSMS.)

    ObservaçãoObservação

    Nas versões anteriores do Windows, a opção Executar como administrador aparece como um submenu.

    Em algumas configurações, o SSMS tentará criar várias conexões. Várias conexões falharão porque o SQL Server está no modo de usuário único. Você pode selecionar uma das seguintes ações para executar. Execute uma delas.

    1. Conecte-se ao Pesquisador de Objetos usando a autenticação do Windows (que inclui as credenciais do administrador). Expanda Segurança, expanda Logons e clique duas vezes no seu próprio logon. Na página Funções de Servidor, selecione sysadmin e clique em OK.

    2. Em vez de conectar-se ao Pesquisador de Objetos, conecte-se à Janela de Consulta usando a autenticação do Windows (que inclui as credenciais do administrador). (Você só poderá se conectar dessa maneira se não tiver se conectado ao Pesquisador de Objetos.) Execute o código da seguinte maneira para adicionar um novo logon de autenticação do Windows que é membro da função de servidor fixa sysadmin. O exemplo a seguir adiciona um usuário de domínio chamado CONTOSO\PatK.

      CREATE LOGIN [CONTOSO\PatK] FROM WINDOWS;
      ALTER SERVER ROLE sysadmin ADD MEMBER [CONTOSO\PatK];
      
    3. Se o SQL Server estiver sendo executado no modo de autenticação mista, conecte-se a uma Janela de Consulta usando a autenticação do Windows (que inclui as credenciais do administrador). Execute o código da seguinte maneira para criar um novo logon de autenticação do SQL Server que é membro da função de servidor fixa sysadmin.

      CREATE LOGIN TempLogin WITH PASSWORD = '************';
      ALTER SERVER ROLE sysadmin ADD MEMBER TempLogin;
      
      Observação sobre cuidadosCuidado

      Substitua ************ por uma senha forte.

    4. Se o SQL Server estiver sendo executado no modo de autenticação mista e você quiser redefinir a senha da conta sa, conecte-se a uma Janela de Consulta usando a autenticação do Windows (que inclui as credenciais do administrador). Alterar a senha da conta sa com a sintaxe a seguir.

      ALTER LOGIN sa WITH PASSWORD = '************';
      
      Observação sobre cuidadosCuidado

      Substitua ************ por uma senha forte.

  9. Agora, as etapas a seguir alteram o SQL Server novamente para o modo de vários usuários. Feche o SSMS.

  10. No SQL Server Configuration Manager, no painel esquerdo, selecione Serviços do SQL Server. No painel direito, clique com o botão direito do mouse na instância do SQL Server e clique em Propriedades.

  11. Na guia Parâmetros de Inicialização, na caixa Parâmetros existentes, selecione -m e clique em Remove.

    ObservaçãoObservação

    Em algumas versões anteriores do SQL Server, não há nenhuma guia Parâmetros de Inicialização. Nesse caso, na guia Avançado, clique duas vezes em Parâmetros de Inicialização. Os parâmetros são abertos em uma janela muito pequena. Remova o ;-m que você adicionou anteriormente e clique em OK.

  12. Clique com o botão direito do mouse no nome do servidor e clique em Reiniciar.

Você poderá se conectar normalmente a uma das contas, que agora é membro da função de servidor fixa de sysadmin.

Consulte também

Conceitos

Iniciar o SQL Server no modo de usuário único

Opções de inicialização do serviço Mecanismo de Banco de Dados