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

Em determinadas circunstâncias, pode ser necessário iniciar uma instância do SQL Server no modo de usuário único usando a startup option -m. Por exemplo, você pode querer mudar as opções de configuração de servidor ou recuperar um banco de dados mestre danificado ou outro banco de dados do sistema. As duas ações exigem iniciar uma instância do SQL Server no modo de usuário único.

Iniciar o SQL Server no modo de usuário único permite que qualquer membro do grupo de Administradores locais do computador se conecte à instância do SQL Server como um membro da função de servidor fixa sysadmin. Para obter mais informações, veja Conectar-se ao SQL Server quando os administradores do sistema estão bloqueados.

Ao iniciar uma instância do SQL Server no modo de usuário único, observe o seguinte:

  • Apenas um usuário pode se conectar ao servidor.

  • O processo CHECKPOINT não é executado. Por padrão, ele é executado automaticamente na inicialização.

Observação

Interrompa o serviço do SQL Server Agent antes de se conectar a uma instância do SQL Server no modo de usuário único. Caso contrário, o serviço do SQL Server Agent usará a conexão, bloqueando-a.

Ao iniciar uma instância do SQL Server no modo de usuário único, o SQL Server Management Studio pode conectar-se ao SQL Server. O Pesquisador de Objetos no Management Studio pode falhar porque ele exige mais de uma conexão para algumas operações. Para gerenciar o SQL Server no modo de usuário único, execute as instruções Transact-SQL conectando-se somente por meio do Editor de Consultas no Management Studio ou use o utilitário sqlcmd.

Ao usar a opção -m com sqlcmd ou Management Studio, você pode limitar as conexões a um aplicativo cliente especificado. Por exemplo, -m"sqlcmd" limita as 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 se conectar por meio do Editor de Consultas no Management Studio, use -m"Microsoft SQL Server Management Studio - Query" .

Importante

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.

Observação sobre instalações clusterizadas

Para instalação do SQL Server em um ambiente clusterizado, quando o SQL Server for iniciado em modo de usuário único, a dll de recurso de cluster usará a conexão disponível, bloqueando quaisquer outras conexões com o servidor. Quando o SQL Server estiver nesse estado e você tentar colocar o recurso do SQL Server Agent online, ele poderá realizar o failover do recurso SQL em outro nó, caso o recurso esteja configurado para afetar o grupo.

Para resolver o problema, use o procedimento a seguir:

  1. Remova o parâmetro de inicialização -m das propriedades avançadas do SQL Server.

  2. Coloque o recurso do SQL Server offline.

  3. No nó do proprietário atual desse grupo, emita o seguinte comando no prompt de comando:
    net start MSSQLSERVER /m.

  4. Verifique junto ao administrador do cluster ou no console de gerenciamento de cluster de failover se o recurso do SQL Server ainda está offline.

  5. Conecte-se ao SQL Server agora usando o seguinte comando e execute a operação necessária: SQLCMD -E -S<servername>.

  6. Quando a operação for concluída, feche o prompt de comando, e coloque o SQL e os outros recursos online novamente através do administrador do cluster.

Consulte Também

Iniciar, parar ou pausar o serviço do SQL Server Agent
Conexão de diagnóstico para administradores de banco de dados
Utilitário sqlcmd
CHECKPOINT (Transact-SQL)
sp_configure (Transact-SQL)
Opções de inicialização do serviço Mecanismo de Banco de Dados