Recebe o erro 7391 quando executa uma transacção distribuída num servidor ligado, no SQL Server 2000, num computador com o Windows Server 2003

Sintomas
Este artigo poderá conter hiperligações para conteúdo em inglês (ainda não traduzido).

Quando executa uma transacção distribuída num servidor ligado, no Microsoft SQL Server 2000, num computador com o Microsoft Windows Server 2003, poderá receber a seguinte mensagem de erro:
Server: Msg 7391, Level 16, State 1, Line 2
The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction. OLE/DB provider returned message: New transaction cannot enlist in the specified transaction coordinator.
Causa
O problema ocorre porque o coordenador de transacções distribuídas da Microsoft (MS DTC) não está configurado para o acesso de rede. Por predefinição, as definições do acesso de rede do MS DTC são desactivadas em novas instalações do SQL Server 2000 nos computadores com o Windows Server 2003.
Resolução
Para resolver este problema, siga estes passos:
  1. Clique em Iniciar (Start), aponte para Todos os programas (All Programs), aponte para Ferramentas administrativas (Administrative Tools) e clique em Serviços componentes (Component Services).
  2. No assistente Serviços componentes (Component Services), expanda Serviços componentes (Component Services) e faça duplo clique em Computadores (Computers).
  3. Clique com o botão direito do rato em O meu computador (My Computer) e clique em Propriedades (Properties).
  4. Clique no separador MS DTC e clique em Configuração da segurança (Security Configuration).
  5. Na caixa de diálogo Configuração da segurança (Security Configuration), clique para seleccionar a caixa de verificação Acesso ao DTC na rede (Network DTC Access).
  6. Em Acesso ao DTC na rede (Network DTC Access), clique em Transacções de rede (Network Transactions).

    Nota: se instalou o Service Pack 1 para o Windows Server 2003, pode clicar em Permitir recepção (Allow Inbound) e Permitir emissão (Allow Outbound).
  7. Certifique-se de que Conta de início de sessão do DTC (DTC Logon Account) está definida como NT Authority\NetworkService.
  8. Clique em OK.
  9. Na caixa de mensagem, clique em Sim (Yes) para continuar.
  10. Na caixa de diálogo Mensagem de consola de DTC (DTC Console Message), clique em OK.
  11. Na caixa de diálogo Propriedades do sistema (System Properties), clique em OK.
  12. Reinicie o computador para que estas alterações entrem em vigor.

    Nota: nalguns casos, tem de iniciar o serviço DTC antes de iniciar o serviço SQL Server para que as consultas distribuídas do servidor ligado funcionem correctamente.
Referências
Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
306843 How to troubleshoot MS DTC firewall issues
Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
871158 You cannot install Microsoft Office Project Server 2003 on Microsoft Windows Server 2003
Propriedades

ID do Artigo: 329332 - Última Revisão: 06/09/2006 19:38:57 - Revisão: 6.3

  • Microsoft SQL Server 2000 Standard Edition
  • kberrmsg kbbug kbprb KB329332
Esta informação foi útil?