>

transaction manager has disabled its support for remote/netw

- 编辑:乐百家599手机首页 -

transaction manager has disabled its support for remote/netw

在SQL SE宝马X3VE奥迪Q3 二零零六 ENVISION2下用Windows 身份认证的报到名创造了一个拜候ORACLE数据库的链接服务器xxxxx,测验成功,木万分,可是任何登陆名使用该链接服务器时,报如下错误:

背景:

第一sqlserver 链接oracle能够透过七个访问接口:

近来再用SSIS做多少归档,里面用到了布满式事务。在开采阶段是在一台Computer上运维只尽管运行遍及式服务就没怎么难点,可是前几天把它配备到uat的时候遭逢难点,错误音信是:

消息 7302,级别 16,状态 1,第 1 行

     斩新服务器,供给充实品质监察和控制,开采不能够通过powershell读取质量指标

“MSDAORA” 和“OraOLEDB.Oracle”

图片 1

Cannot create an instance of OLE DB provider "OraOLEDB.Oracle" for linked server "xxxxxx".

减轻情势:

1、“MSDAORA”访谈接口是由Microsoft OLE DB Provider for Oracle提供的,这里提出不应用此接口实行链接。通过该访谈接口创设的链接服务器在张开查询oracle表(带数据类型CLOB、BLOB字段)时会报这些错误“ 链接服务器""的 OLE DB 访问接口 "MSDAORA" 重回了新闻 "发生了多少个 Oracle 错误,但敬谢不敏从 Oracle 中搜索错误音讯。"。 链接服务器""的 OLE DB 访谈接口 "MSDAORA" 重临了新闻 "数据类型不被帮助。"。 音信 7321,等级 16,状态 2,第 1 行 计划对链接服务器 "" 的 OLE DB 访问接口 "MSDAORA" 实施查询"select * from SYS_MESSAGE"时出错。”

末尾找到消除方案:

 

  • Open the Registry Editor by going to the Start Menu and selecting Run…, then type “regedit”, and click the OK button.
  • Navigate to the HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurePipeServerswinreg registry key.
  • Right click on the "winreg" key and select Permissions. Add users or groups to which you want to grant Read access.
  • Exit Registry Editor and restart Windows.

2、“OraOLEDB.Oracle” 访谈接口是由oracle 的Oracle Probider for OLE DB 驱动提供的。它解决了八个数据库类型分裂等的的主题材料。并且假诺必要使用布满式事务,必须利用它来创立链接服务器。后文子禽有详实介绍。 在成立此前,在SQLSE科雷傲VE福特Explorer中,链接服务器->访谈接口->OraOLEDB.Oracle->右键属性,选中 "Allow inprocess" (普通话为:允许进度内) 这一步是使大家选用的OraOLEDB.Oracle接口张开施行操作。如未安装会报如下错误: “无法开头化链接服务器 "null" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 的数据源对象"

  1. 肯定"Distribute Transaction Coordinator"服务在Server和本地都以运作情形。(如败北能够 输入:msdtc -resetlog (注意运营此命令时,不要实施挂起的职业)
  2. 在Server上打开 Component Services。 Control Panel –> System and Security –> Administrative Tools –> Component Services.
  3. 开始展览至 Component 瑟维斯s –> Computers –> My Computer –> Distributed Transaction Coordinator –> Local DTC, 右键,选择Properties。在弹出的Dialog中接纳Tab “Security”, 勾选Network DTC Access 等选项,具体设置如下图。
    图片 2
  4. 如上的截图是在win8上的,如若您的系统是xp或是二零零三则有一些变化.张开至 Component Services –> Computers –> My Computer右键,选取Properties。在弹出的Dialog中接纳Tab “MSDTC”–>Security Configuration, 勾选"Network DTC Access", "Allow Remote Client",
    "Allow Inbound/Outbound", "Enable TIP" (Some option may not benecessary, have a try to get your configuration) 等选取,具体设置如下图。
    图片 3
  5. 肯定后会必要重复启航Service。注:要是在前边的手续做完后,依旧不恐怕消除难点,也许须要重启Computer。
  6. 确认DTC不会被您的防火墙阻止。

那时内需在“服务器对象”——>“链接服务器”——>“访问接口”下,找到OraOLEDB.Oracle选项,单击右键选取属性,然后在拜谒接口选项下勾选“允许进程内”(Allow inprocess)。就能够减轻地方难点,不时候,只怕须求重新新建此链接服务器。

 

 请注意,固然大家的条件和自己同一不在域里面,请选中不须要开始展览认证。否者在运作遍布式事务时远程计算机缘提醒“此专门的工作已明地或暗地被确认或终止 ”。(Computer名称必须求能ping通,不然回报一样的谬误), 注意xp系统下一般是ping不通的

图片 4

服务器 windows server 2008 r2 64位  或 win 7 enterprise 64位

是因为防火墙禁止了icmp数据包.
现实查看:
千帆竞发-调控面板-防火墙-高等-ICMP-设置.允许了就足以ping通了

 

  1. 服务器上供给安装Oracle 六11位的客户端(

图片 5

老外给出了二个缓和那么些难题的步骤,特出详细严厉,差不离左右逢原。可以看做参谋学习的好材质:

设置到位后SQL Server的拜候接口上会新扩大”OraOLEDB.Oracle”(安装三十六人客户端,看不到)。

ps:

本文由乐百家数据库发布,转载请注明来源:transaction manager has disabled its support for remote/netw