Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Detalhes da mensagem
| Nome do produto | SQL Server |
| ID do evento | 18752 |
| Origem do evento | MSSQLSERVER |
| Componente | Mecanismo de Banco de Dados do SQL Server |
| Nome simbólico | |
| Texto da mensagem | Somente um Agente de Leitor de Log ou um procedimento relacionado ao log (sp_repldone, sp_replcmds e sp_replshowcmds) pode se conectar ao banco de dados de cada vez. Se você tiver executado um procedimento relacionado ao log, descarte a conexão através da qual o procedimento foi executado ou execute sp_replflush por essa conexão antes de iniciar o Agente de Leitor de Log ou de executar outro procedimento relacionado ao log. |
Explicação
Mais de uma conexão atual está tentando executar qualquer uma das seguintes opções: sp_repldone, sp_replcmds ou sp_replshowcmds. Os procedimentos armazenados sp_repldone (Transact-SQL) e sp_replcmds (Transact-SQL) são procedimentos armazenados usados pelo Log Reader Agent para localizar e atualizar informações sobre transações replicadas em um banco de dados publicado. O procedimento armazenado sp_replshowcmds (Transact-SQL) é usado para solucionar determinados tipos de problemas com replicação transacional.
Esse erro é gerado nas seguintes circunstâncias:
Se o Agente de Leitor de Log para um banco de dados publicado estiver em execução e um segundo Agente de Leitor de Log tentar executar no mesmo banco de dados, o erro será gerado para o segundo agente e aparecerá no histórico do agente.
Em uma situação em que parece haver vários agentes, é possível que um deles seja o resultado de um processo órfão.
Se o Agente de Leitor de Log para um banco de dados publicado for iniciado e um usuário executar sp_repldone, sp_replcmds ou sp_replshowcmds no mesmo banco de dados, o erro será gerado no aplicativo em que o procedimento armazenado foi executado (como o sqlcmd).
Se nenhum Agente de Leitor de Log estiver em execução para um banco de dados publicado e um usuário executar sp_repldone, sp_replcmds ou sp_replshowcmds e, em seguida, não fechar a conexão sobre a qual o procedimento foi executado, o erro será gerado quando o Agente de Leitor de Log tentar se conectar ao banco de dados.
Ação do usuário
As etapas a seguir podem ajudá-lo a solucionar o problema. Se qualquer etapa permitir que o Agente de Leitor de Log inicie sem erros, não será necessário concluir as etapas restantes.
Verifique o histórico do agente Leitor de Log para identificar outros erros que possam estar contribuindo para esse problema. Para obter informações sobre como exibir o status do agente e detalhes de erro no Replication Monitor, consulte Exibir Informações e Executar Tarefas usando o Replication Monitor.
Verifique a saída de sp_who (Transact-SQL) para obter SPIDs (números de identificação de processo) específicos que estão conectados ao banco de dados publicado. Feche todas as conexões que possam ter executado sp_repldone, sp_replcmds ou sp_replshowcmds.
Reinicie o Agente de Leitor de Log. Para obter mais informações, confira Iniciar e interromper um agente de replicação (SQL Server Management Studio).
Reinicie o serviço SQL Server Agent (coloque-o offline ou online em um cluster) no Distribuidor. Se houver a possibilidade de que um trabalho agendado possa ter sido executado sp_repldone, sp_replcmds ou sp_replshowcmds de qualquer outra instância do SQL Server, reinicie o SQL Server Agent para essas instâncias também. Para obter mais informações, consulte Iniciar, Parar ou Pausar o Serviço do SQL Server Agent.
Execute sp_replflush (Transact-SQL) no Publicador da base de dados de publicação e, em seguida, reinicie o Agente Leitor de Log.
Se o erro continuar a ocorrer, aumente o registro em log do agente e especifique um arquivo de saída para o log. Dependendo do contexto do erro, isso pode fornecer as etapas que antecedem o erro e/ou mensagens de erro adicionais.
Consulte Também
Referência de erros e eventos (replicação)
Agente Leitor de Log de Replicação