澳门金莎娱乐手机版 数据库 杀鸡取蛋办法,链接服务器””的 OLE DB 访问接口

杀鸡取蛋办法,链接服务器””的 OLE DB 访问接口



在SQL SECRUISERVE奥迪Q7 二〇一〇 宝马X52下用Windows
身份验证的登入名创制了一个访谈ORACLE数据库的链接服务器xxxxx,测量检验成功,木反常,可是其余登入名使用该链接服务器时,报如下错误:

背景:

率先sqlserver 链接oracle能够经过八个访问接口:

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

     斩新服务器,须要追加质量监察和控制,开掘无法透过powershell读取质量指标

“MSDAORA” 和“OraOLEDB.Oracle”

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中华V中,链接服务器->访谈接口->OraOLEDB.Oracle->右键属性,选中
“Allow inprocess”
(汉语为:允许进度内) 这一步是使大家选用的OraOLEDB.Oracle接口张开实行操作。如未设置会报如下错误: “不只怕早先化链接服务器
“null” 的 OLE DB 访问接口 “OraOLEDB.Oracle” 的数据源对象”

当时急需在“服务器对象”——>“链接服务器”——>“访谈接口”下,找到OraOLEDB.Oracle选项,单击右键选用属性,然后在访谈接口选项下勾选“允许进度内”(Allow
inprocess卡塔尔国。就能够撤消地点难题,有的时候候,大概必要重新新建此链接服务器。

 

图片 1

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

 

  1. 服务器上急需设置Oracle
    陆十一位的客商端(

鬼子给出了二个缓和这些主题素材的步调,卓殊详细严厉,大约眼观四路。能够用作参照学习的好素材:

安装完结后SQL
Server的访谈接口上会新添”OraOLEDB.Oracle”(安装33个人客商端,看不到卡塔尔。

Ran into this issue where the linked
server would work for users who were local admins on the server, but not
for anyone else. After many hours of messing around, I managed to fix
the problem using the following steps:

安装:Windows Server2008 R2下安装Oracle
10g

  1:Run “dcomcnfg.exe”. Navigate to
“Component Services -> Computers -> My Computer -> DCOM
Config”.

  1. 计划”OraOLEDB.Oracle”属性->启用处“允许进度内”;

  2. 新建链接服务器(名称 自定 :ORA_LINK)

  3. 填写链接服务器名称->选用访谈接口”Oracle Provider for OLE DB”

  4. 填写产物名称->Oracle

  2:Open the properties page of
“MSDAINITIALIZE”.

6.
数据源填写Oracle客商端/服务端配置的接连地址的服务名(tnsnames.ora中的服务名卡塔 尔(英语:State of Qatar)

  3:Copy the “Application ID” on the
properties page.

  (listener.ora/sqlnet.ora/tnsnames.ora配置文件详细解释)

  4:Close out of “dcomcnfg”.

  (sqlnet.ora<->Oracle Net Manager 
概要文件)(tnsnames.ora<->Oracle Net Manager
服务命名)(listener.ora<->Oracle Net Manager 监听程序)

  5:Run “regedit”. Navigate to
“HKEY_CLASSES_ROOTAppID{???}” with the ??? representing the
application ID you copied in step #3.

7.
填写Oracle的登录账号密码:选取项->安全性->接纳”使用此安全上下文创设连接”,并填入Oracle登入名与登录密码

  6:Right click the “{???}” folder and
select “Permissions”

SELECT *
FROM OPENQUERY(ORA_LINK,’SELECT * FROM
USERNAME.TABLE’);

  7:Add the local administrators group
to the permissions, grant them full control.

 

  8:Close out of “regedit”.

Oracle 的 透明网关(transparent Gateway)也得以兑现 Oracle 能够与 其余异构数据库的互联

  9:Reboot the server.

  10:Run “dcomconfig”. Navigate to
“Component Services -> Computers -> My Computer -> DCOM
Config”.

  11:Open the properties page of
“MSDAINITIALIZE”.

  12:On the “Security” tab, select
“Customize” under “Launch and Activation Permissions”, then click the
“Edit” button.

  13:Add “Authenticated Users” and
grant them all 4 launch and activation permissions.

  14:Close out of “dcomcnfg”.

  15:Find the Oracle install root
directory. “E:Oracle” in my case.

  16:Edit the security properties of
the Oracle root directory. Add “Authenticated Users” and grant them
“Read & Execute”, “List folder contents” and “Read” permissions. Apply
the new permissions.

  17:Click the “Advanced Permissions”
button, then click “Change Permissions”. Select “Replace all child
object permissions with inheritable permissions from this object”. Apply
the new permissions.

  18:Find the “OraOLEDB.Oracle”
provider in SQL Server. Make sure the “Allow Inprocess” parameter is
checked.

  19:Reboot the server.

 

 

标签:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图