请教:sqlserver 建立链结服务器时,列表中没有: Oracle Provider for Ole DB

liuri璇玑 IT  2015-07-03 05:29:01
如题,我安装了sqlserver2012(64bit),服务器在本地
安装了oracle11g客户端64位
oraclep客户端能正常访问数据库,使用tnsping检测也OK, 而且我使用access也能从oracle读取数据
但是, sqlserver建立链结服务器时,列表中没有: Oracle Provider for Ole DB
我使用导入导出工具时,可以选择Microsoft OLE CDB Provider for Oracle,但点测试连接时报错:测试连接失败,因为初始化提供程序时发生错误。未找到 Oracle 客户端和网络组件。这些组件是由 Oracle 公司提供的,是 Oracle 7.3.3 版(或更高)客户软件安装的一部分。
...全文
14161 点赞 收藏 13
写回复
13 条回复
学海无涯-回头是岸 2017年09月22日
我前面是这样解决的 开始只装的客服端,发现怎么弄都不行,网上很多教程都试了没用,最后 重装了 oracle 12C的服务端,啥问题没得了
回复 点赞
悬崖跳舞被人砍 2017年09月22日
我参考这篇博客解决了这个问题。 http://www.cnblogs.com/loveme123/archive/2013/01/23/2873127.html
回复 点赞
qq_35779138 2016年08月03日
楼主,我遇到了和你一模一样的问题,请问你找到解决方法了么?
回复 点赞
qwe6890087 2015年11月15日
楼主我找到解决办法了,需要手动注册OraOLEDB11.dll。 具体步骤:1、安装32位或者64位oracle客户端 2、注册OraOLEDB11.dll,文件的路径在D:\app\Administrator\product\11.2.0\client_3\BIN目录下,具体看oracle安装的位置,注册之后便可选择提供程序。 3、注册命令:regsvr32 E:\app32\tm\product\11.2.0\client_1\BIN\OraOLEDB11.dll 参考地址:http://www.cnblogs.com/tomfang/archive/2013/05/25/3098454.html
回复 点赞
liuri璇玑 2015年07月06日
谢谢hery2002 ,我把ORACLE的32位和64位都装了,所以,我的 查看32位ODBC驱动:启动 C:/Windows/SysWOW64/odbcad32.exe 查看64位ODBC驱动,启动 C:/WINDOWS/system32/odbcad32.exe 下都有ORACLE的驱动,但sqlserver就是不识别
回复 点赞
misterliwei 2015年07月06日
http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
回复 点赞
misterliwei 2015年07月06日
在 链接服务器列表中没有出现 ORACLE OLEDB驱动,应该就是驱动没有注册好,64位SQL SERVER应该对应使用64位ORACLE OLEDB 驱动。 所以我觉得应该重新安装64位驱动。
回复 点赞
Tiger_Zhao 2015年07月06日
一般应该先装Oracle再装SQL Server,这样很大的可能会自动关联上去。
你现在试试修改SQL Server的安装,找找里面的详细项目,有没有Oracle Provider for Ole DB?加上去。
或者选择修复安装试试。
回复 点赞
唐诗三百首 2015年07月06日
建议把服务器windows重启一下再看看是否有Oracle驱动. 或者尝试用TSQL创建link server.

sp_addlinkedserver '[LinkServerName]', 'Oracle',  'MSDAORA', '[Oracle客户端里的服务名]'

sp_addlinkedsrvlogin '[LinkServerName]', 'false', 'sa', '[Oracle帐号]', '[密码]'
回复 点赞
hery2002 2015年07月04日
1:64位 控制面板中“ODBC数据源”可执行程序(控制面板64位,SysWOW64下的是32位的,64位的兼容版本) 查看32位ODBC驱动:启动 C:/Windows/SysWOW64/odbcad32.exe 查看64位ODBC驱动,启动 C:/WINDOWS/system32/odbcad32.exe 或者去控制面板 2:ORACLE ODBC驱动程序 系统安装ORACLE 64位服务端32位客户端(PLSQL兼容关系),ODBC驱动程序是依赖于客户端即SQORA32.DLL (位于客户端下)是32位的。 结论草案 1:64位ODBC + 64位驱动: 2: 32位ODBC + 32位程序驱动 采用方案2,修改较少,问题成功解决,即: +查看32位ODBC驱动:启动 C:/Windows/SysWOW64/odbcad32.exe -查看64位ODBC驱动:启动 C:/WINDOWS/system32/odbcad32.exe 或者去控制面板
回复 点赞
hery2002 2015年07月04日
是不是32位和64位的问题, 看看下面这个blog能否解决你的问题。 Linked server和SSIS连接Oracle时的常见问题
回复 点赞
shoppo0505 2015年07月03日
版本太旧,不支持SQL 2012吧
回复 点赞
发动态
发帖子
疑难问题
创建于2007-09-28

9307

社区成员

12.1w+

社区内容

MS-SQL Server 疑难问题
社区公告
暂无公告