一同事在测试服务器(系统:Windows 2008 R2 Standard 数据库:SQL SERVER 2008 R2)通过链接服务器test使用分布式事务测试时出错,出错信息如下:

set xact_abort on

begin tran

update test.mydb.dbo.test_one set name='test' where  id= 3 ;

commit

OLE DB provider "SQLNCLI10" for linked server "test" returned message "The transaction manager has disabled its support for remote/network transactions.".

消息 7391,级别 16,状态 2,第 5 行

The operation could not be performed because OLE DB provider "SQLNCLI10" for linked server "test" was unable to begin a distributed transaction.

出现这个错误时因为这台服务器,或者链接服务器那台服务器没有配置好MS DTC(Microsoft Distributed Transaction Coordinator  微软 分布式事务协调器)。

    首先确保开启了 'remote access'、 'remote admin connections'、 'remote proc trans'选项。

Code Snippet
  1. exec sp_configure 'show advanced options',1;
  2. go
  3. reconfigure;
  4. go
  5. exec sp_configure 'remote access',1;
  6. go
  7. reconfigure;
  8. go
  9. exec sp_configure 'remote admin connections',1;
  10. go
  11. reconfigure;
  12. go
  13. exec sp_configure 'remote proc trans',1 ;
  14. go
  15. reconfigure;
  16. go

配置DTC步骤

Step 1:Start(开始)-Control Panel(控制面板)-System and Security(系统和安全)- Administrative Tools(管理工具)-Component Services(组件服务)(或者Run->dcomcnfg 直接跳出组件服务)。

  进入界面点击(Console Root->Componet Services->Computers->My Computer-> Local DTC)

Step 2: 右键单击"Local DTC"的属性,就可以看到“Tracing”、“Logging”、“Security”三个面板。关于设置属性。可以点击下面的“Learn more about setting these properties”

如下所示,一般只用设置“Security”下的属性,具体情况,根据实际情况配置,可以参考下面“本地DTC属性页:“安全选项”卡说明

 

注意:如果服务器开启了防火墙,那么必须确保防火墙是否开放了135端口(即允许Distributed Transaction Coordinator程序通过防火墙)

参考资料:

http://blog.csdn.net/wobuwei/article/details/4352792

MS SQL 错误:The operation could not be performed because OLE DB provider "SQLNCLI10" for linked server "test" was unable to begin a distributed transaction.的更多相关文章

  1. The operation could not be performed because OLE DB provider "SQLNCLI11" for linked server "SDSSDFCC" was unable to begin a distributed transaction.

    Question: SQL SERVER 通过Linkserver连接A和B 2台,A对B执行单条的增删改查没有异常(没有配置DTC) 但是开启事务后就会出现报错 Solution: 在A和B上配置D ...

  2. The operation could not be performed because OLE DB provider "SQLNCLI11" for linked server "SDSSDFCC...

    The operation could not be performed because OLE DB provider "SQLNCLI11" for linked server ...

  3. sql server2008 搭建链接服务器成功后查询时报Cannot obtain the schema rowset "DBSCHEMA_TABLES_INFO" for OLE DB provider "SQLNCLI10" for linked server "XXXXX". 的解决方法

    这是由于链接的数据库服务器的版本与本地数据库服务器不一致,有人说要升到sp3,sp4,然后在执行什么语句之类的 我觉得太繁琐了,通过网上查询之后看到可以这么做: USE master GRANT EX ...

  4. The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction

    今天遇到一起关于分布式事务错误的案例,如下所示,执行SQL脚本时报错, 错误信息具体如下所示: [OLE/DB provider returned message: 新事务不能登记到指定的事务处理器中 ...

  5. Microsoft OLE DB Provider for SQL Server 错误 '80040e21'

    我的是因为数据库满了,正在向服务商申请增加数据库容量 原文地址:Microsoft OLE DB Provider for SQL Server 错误 '800作者:欧阳IT记事本 昨天打开网站还正常 ...

  6. MS SQL错误:SQL Server failed with error code 0xc0000000 to spawn a thread to process a new login or connection. Check the SQL Server error log and the Windows event logs for information about possible related problems

          早晨宁波那边的IT人员打电话告知数据库无法访问了.其实我在早晨也发现Ignite监控下的宁波的数据库服务器出现了异常,但是当时正在检查查看其它服务器发过来的各类邮件,还没等到我去确认具体情 ...

  7. MS SQL 错误 :17883,严重度: 1,状态: 0

    公司一台老旧的SQL SERVER 2000 数据库,一周内会出现若干次(一次或多次)CPU 持续100%,导致应用程序没有反应的情况,如下图所示: 错误信息如下所示: 日期 2013/7/12 2: ...

  8. MS SQL 错误:无法绑定由多个部分组成的标识符 "xxxxx"

    今天有个同事问我一个SQL问题,觉得有点意思,虽然能很快定位并解决问题,但是就是有种说不清道不明的感觉.因为不能解释清楚(很多是建立在假设上),顺便记录一下,希望有清楚原理的人能解答一二. 原SQL语 ...

  9. 关于:无法创建链接服务器 "ORCL" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 的实例 (错误:7302)

    本人接触和使用Oracle数据库才有一个季度的时间,问题比较白,大神请无视本文. 环境: 1.数据服务器,windows2008R2,Oracle11g 2.报表服务器,windows2008R2,S ...

随机推荐

  1. 解决 android 高低版本 webView 里内容 自适应屏幕的终极方法

    转载请声明出处(http://www.cnblogs.com/linguanh/) 一,先说下我的情况,大家可以对号入座(嫌无聊请跳过) 我的项目要求是这样的,先从数据库里面拿出来html标签,因为加 ...

  2. ACM-东北大学程序设计竞赛-网络赛(2016.04.16)

    Problem: A Time limit: 1s    Mem limit: 64 MB    AC/Submission: 0/0    Discuss Back   Ranklist  Stat ...

  3. Linux process vs thread

    Linux process vs thread Question I have a query related to the implementation of threads in Linux. L ...

  4. 我的angularjs源码学习之旅2——依赖注入

    依赖注入起源于实现控制反转的典型框架Spring框架,用来削减计算机程序的耦合问题.简单来说,在定义方法的时候,方法所依赖的对象就被隐性的注入到该方法中,在方法中可以直接使用,而不需要在执行该函数的时 ...

  5. 一个网站完整详细的SEO优化方案

    根据自己的个人经验完成了这篇文章,希望对SEOer有点帮助,高手直接跳过,请勿喷水... 一个完整的SEO优化方案主要由四个小组组成: 一.前端/页编人员 二.内容编辑人员 三.推广人员 四.数据分析 ...

  6. SqlServer 分页查询

    1.not in方法 select top 10 from books where id not in (select top 30 id from books)   2.row_number()函数 ...

  7. Visula Studio 2013/2015自定义快捷键

    很多同学新装了VS2013/2015后, 发现快捷键变掉了, 比如之前编译快捷键是F6, 现在变成Ctrl + Shift + B, 其实要改回去很简单, 菜单Tools->Options, 打 ...

  8. Winform分页控件

    设计界面: 控件代码: using System; using System.Collections.Generic; using System.ComponentModel; using Syste ...

  9. [Excel] Worksheet.PasteSpecial

    PasteSpecial(Format, Link, DisplayAsIcon, IconFileName, IconIndex, IconLabel, NoHTMLFormatting) 1. F ...

  10. servlet/filter/listener/interceptor区别与联系

    转自:http://www.cnblogs.com/doit8791/p/4209442.html servlet.filter.listener是配置到web.xml中(web.xml 的加载顺序是 ...