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

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

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

Síntomas

Cuando intenta usar Microsoft SQL Server para iniciar una transacción distribuida entre servidores vinculados que ejecutan Windows Server, puede recibir el siguiente mensaje de error:

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

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

No se puede dar de alta una nueva transacción 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 a la red está deshabilitado. De forma predeterminada, el acceso a DTC desde la red está deshabilitado en Windows Server.

Solución alternativa

Para solucionar este problema, 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 aplicaciones y, a continuación, en detalles.
  4. Haga clic para activar la casilla Habilitar el acceso de red DTC 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).