Mensaje de error: el proveedor OLE DB SQLOLEDB no pudo iniciar una transacción distribuida

Este artículo le ayuda a solucionar el problema de que el mensaje de error del proveedor OLE DB SQLOLEDB no pudo iniciar una transacción distribuida.

Versión del producto original: SQL Server
Número de KB original: 816701

Síntomas

Al intentar usar Microsoft SQL Server para iniciar una transacción distribuida entre servidores vinculados que ejecutan Windows Server, es posible que reciba el siguiente mensaje de error:

El proveedor OLE DB SQLOLEDB no pudo iniciar una transacción distribuida

El mensaje siguiente puede aparecer en el equipo del proveedor OLE DB:

La nueva transacción no puede inscribirse en el coordinador de transacciones especificado.

Causa

Este comportamiento se produce si el servicio Coordinador de transacciones distribuidas (DTS) está deshabilitado o si el acceso DTC de red está deshabilitado. De forma predeterminada, el acceso DTC de red está deshabilitado en Windows Server.

Solución alternativa

Para evitar este comportamiento, instale el acceso DTC de red en ambos servidores:

  1. Haga clic en Inicio y en Panel de control.
  2. Haga clic en Agregar o quitar programas y, a continuación, haga clic en Agregar o quitar componentes de Windows.
  3. En el cuadro Componentes , haga clic en Servidor de aplicacionesy, a continuación, haga clic en Detalles.
  4. Haga clic para activar la casilla Habilitar acceso DTC de red y, a continuación, haga clic en Aceptar.
  5. Haga clic en Siguiente y, a continuación, siga las instrucciones que aparecen en la pantalla para completar el proceso de instalación.
  6. Detenga y reinicie el servicio Coordinador de transacciones distribuidas.
  7. Detenga y reinicie los servicios del administrador de recursos que participen en la transacción distribuida (como Microsoft SQL Server o Microsoft Message Queue Server).