post icon

Como configurar las transacciones distruibuidas en Windows [MSDTC]

Cuando trabajamos con servidores de bases de datos, configurados como linked server y otros casos similares necesitamos tener correctamente configurado el Coordinador de Transacciones Distribuidas. También pudo ser que llegaste aquí porque te apareció el siguiente error:

El proveedor OLE DB “SQLNCLI” para el servidor vinculado “MISERVIDOR” devolvió el mensaje “El administrador de transacción asociada ha deshabilitado su soporte para transacciones de red o remotas.

En cualquier caso, veamos como configurar en ambos servidores dicho MSDTC, en Windows 2003 y 2008 ha cambiado ligeramente la manera de hacerlo, así que veamos para ambos casos.

Windows 2003 Server y Windows XP

  1. Abrimos el administrador de componentes ejecutando dcomcnfg.
  2. Expanda Servicios de componentes y Equipos
  3. Hace clic derecho sobre MI PC y le damos a propiedades.
  4. En la pestaña MSDTC marque la opción Usar Coordinador local, luego haga clic en Configuración de Seguridad.
  5. En la nueva ventana active el Acceso a DTC desde la red, en la Comunicación del administrador de transacciones active Permitir entrantesPermitir salientes y No se requiere autenticación.

Windows 2008, Windows Vista y Windows 7

  1. Abrimos el administrador de componentes ejecutando dcomcnfg.
  2. Expanda Servicios de componentes y Equipos
  3. Hace clic derecho sobre MI PC y le damos a propiedades.
  4. En la pestaña MSDTC marque la opción Usar Coordinador local, luego haga clic en Aceptar.
  5. Luego expanda MI PC y Coordinador de transacciones distribuidas (DTC), haga clic con el botón secundario en DTC local y, finalmente, haga clic en Propiedades.
  6. En las propiedades DTC Local active el Acceso a DTC desde la red, en la Comunicación del administrador de transacciones active Permitir entrantesPermitir salientes y No se requiere autenticación.
 
También recuerdo agregar la excepción al firewall que esté utilizando para que la comunicación del MSDTC no sea bloqueada.

Comentarios desde Facebook:

  1. avatar
    Kiquenet SPAIN Mozilla Windows
    11 octubre 2016 at 07:55 #

    Muy bueno, y bien detallado. Gracias.

    Mi duda, para forzar que NO se utilicen Transacciones Distribuidas con TransactionScope y SQL Server ?

    using (var scope = new System.Transactions.TransactionScope(System.Transactions.TransactionScopeOption.Required))
    {

  2. avatar
    Carlos SPAIN Google Chrome Windows
    22 agosto 2014 at 06:58 #

    Me ha sido muy útil.
    Muchas graciass

Responder