在X64oracle服务器上增加X86客户端for Web

背景:在windows2008 r2 64位上搭建64位oracle 11g,之后在同一个系统上添加IIS,部署web,但由于web程序为32位程序,不能通过本机的数据库客户端连接本机的数据库,需通过在本机上安装32位客户端,让web可连接。本文借鉴的是一台主机同时支持x86与x64客户端安装 ,原文转自http://www.cnblogs.com/volnet/archive/2012/05/22/2513968.htm,以及其他例如关于oracle错误的文章。

系统:windows2008 r2 x64     数据库:oracle 11g x64     web:asp.net 

 

1.在服务器上安装的windows2008 r2 x64,安装oracle11g,新建实例及初始化数据,添加IIS7.0,部署asp.net程序,在应用池中开启32位模式。

2.接着访问web,试着登录,则出现了未在本地计算机上注册“OraOLEDB.Oracle,此时在网上搜到了很多关于这个错误的解决方法,总结如下:

A.在确保服务器已安装“Oracle Provider for OLE DB”提供程序的前提下找到Oracle的安装目录,如“D:\oracle92”,为该目录添加Everyone用户,并给予完全控制权限,在高级中确定是否将权限应用子目录和子文件等,重新注册oraoledb11.dll,regsvr32 app/<user>/product/11.1.0/db_1/BIN/OraOLEDB11.dll。

但这时候试过各种方法还是不行了,我试了好久各种凌乱。

3.该看一台主机同时支持x86与x64客户端安装 这个教程,开始安装odac,这篇文章讲的是一台主机同时支持两种客户端,但我们这里因为是在装有oracle的系统上,并不需要安装X64的客户端,取我所需足矣。

4.下载Oracle Data Access Components(ODAC) Xcopy的X86版本:

x86:http://www.oracle.com/technetwork/database/windows/downloads/index-101290.html   关于版本的选择,可选择Release 11.2.0.3.0 Production

5.将下载到的ODAC112030Xcopy_32bit.zip安装到任意目录,(临时的,一会可以删掉)。

6.开始->运行->cmd->cd 该文件夹

7.运行命令 install.bat all {目标路径:也就是最后要被安装的目录} odac    例如:install.bat all C:\Oracle\ODAC112030Xcopy_32bit odac

8.将其加入到系统环境变量中:

PATH的值中增加:C:\Oracle\ODAC112030Xcopy_32bit;C:\Oracle\ODAC112030Xcopy_32bit\bin; 该值以实际情况为准。

9.在C:\Oracle\ODAC112030Xcopy_32bit路径下建立network\ADMIN\tnsnames.ora,可将oracle11g下的直接拷贝过去。

10.重启服务器,这一步非常重要。

11.关于测试,因为已经有现有的web程序来调试了,有兴趣的可以看一下一台主机同时支持x86与x64客户端安装 写一个Console程序测试的一段。(跳过)

12.使用PL/SQL Developer测试连接是否可以连接,因为PL/SQL只支持x86的OCI.DLL,所以,在设置环境路径的时候,应该把32bit的相关路径放在前面,这样就可以正确运行了。在这一步时可能会出现Could not load "……\bin\oci.dll"等,设置PLSQL Developer中设置Oracle_Home和OCI Library。如PLSQL中文乱码,则在D:\Oracle\ODAC112030Xcopy_32bit\bin路径下查看oracle.key可以查到字符集放在这个位置:SOFTWARE\Wow6432Node\ORACLE\KEY_odac修改NLS_LANG为SIMPLIFIED CHINESE_CHINA.ZHS16GBK。

13.此时用web访问登陆时可能还会出现未在本地计算机上注册“OraOLEDB.Oracle 这个错误,可以为C:\Oracle目录添加Everyone用户,并给予完全控制权限,在高级中确定是否将权限应用子目录和子文件等,重新注册oraoledb11.dll,regsvr32 C:\Oracle\ODAC112030Xcopy_32bit\bin\raOLEDB11.dll。

 

14.最好再次重启,如果还是不行,看人品,再谷歌度娘。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值