在客户端和适配器SQL Server配置 MSDTC

在事务SQL Server内SQL (通过 BizTalk Server、WCF 服务模型或 WCF 通道模型) 对对象执行的操作。 如果客户端程序在同一事务中具有多个事务资源,该事务将提升为 MSDTC 事务。 若要使适配器能够执行 MSDTC 事务范围内的操作,必须在运行 MSDTC 适配器和 SQL 的计算机上配置 MSDTC SQL Server。 此外,必须将 MSDTC 添加到防火墙的Windows列表中。 本部分提供有关如何在运行适配器客户端和客户端的计算机上执行这些任务SQL Server。

注意

  • 使用 SQL Server 对 BizTalk Server 操作始终涉及两个资源:连接到 SQL Server 的适配器和驻留在 SQL Server。 因此,使用 BizTalk Server的所有操作在 MSDTC 事务范围内执行。 因此,若要将 SQL 适配器BizTalk Server,必须始终启用 MSDTC。

  • 对于适配器客户端不向 SQL Server 数据库写入任何数据的操作(如 Select 操作)来说,你可能不希望在事务内执行这些操作的额外开销。 在这种情况下,可以通过将 UseAmbientTransaction 绑定属性设置为 false,将 SQL适配器配置为在没有事务上下文的情况下执行操作。 有关绑定属性详细信息,请参阅阅读有关用于绑定SQL Server的 BizTalk 适配器。 在这种情况下,也不需要配置 MSDTC。

配置 MSDTC

  1. 打开 "组件服务"

    或者,在服务器管理器,选择"工具",然后选择"组件服务"

  2. 展开"组件服务",展开"计算机",我的电脑"分布式事务处理协调器,右键单击"本地 DTC",然后选择"属性"

  3. 选择" 安全" 选项卡。在此选项卡中,选择以下所有选项:

    • 网络 DTC 访问
    • 允许远程客户端
    • 允许入站
    • 允许出站
    • 不要求进行身份验证
  4. 选择“确定”保存更改。

  5. 如果系统提示重启 MSDTC 服务,请选择"是 "。 重启 MSDTC 服务后,关闭属性和组件服务 MMC。

将 MSDTC 添加到Windows例外列表

提示

防火墙中可能 (Microsoft 分布式 Tansaction) MSDTC 服务器。 如果是,则列为入站规则。 如果未列出,请使用此部分来允许 MSDTC。

  1. 打开Windows防火墙",然后选择设置"高级防火墙"。

    或者,在服务器管理器中,选择"工具",然后选择"Windows高级安全防火墙"

  2. 右键单击 "入站规则",然后选择" 新建规则"

  3. 在向导中:

    1. 选择" 程序",然后选择"下一 步"
    2. 将程序 路径设置为 ,然后选择 %SystemRoot%\system32\msdtc.exe"下一 步"
    3. 允许连接,然后选择"下一 步"
    4. 选择" ",然后选择"下一 步"
    5. 输入任何名称(如 )并选择 MSDTC for Oracle EBS"完成 "
  4. 完成向导,并关闭"Windows防火墙"。

另请参阅

开发 SQL 应用程序