• System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本


                         System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本

    在用VS.NET2005+Oracle9.2进行开发的时候,在本地测试可以通过,但是在服务器上不能实现(复制网站,发布网站都不行),报错的具体内容,没记下来,大概就是:
    "System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本"
    在网上查询了很长时间也没有见效,后来综合网上的很多方法,终于测试成功,现分享一下。
    出错的原因:
    1.虽然报的是需要安装客户端8.1.7及以上版本但是并非这个,而是.net账户没有访问Oracle\bin文件夹的权限
    2.windows2003操作系统安装在NTFS格式的盘中,如果是FAT32也就没有这个问题,看来NTFS格式在安全性这方面作的确实出色。
    废话少说,还是看看我的解决方法吧。

    方法1:

    2.点击“高级”----“立即查找”,在下面显示的账户中选择“NTWORK SERVICE”(注意:IIS6中aspnet的账户是NTWORK SERVICE;而在IIS5中是aspnet。总之,在搜索出的账户中有这两个账户中的哪一个就选哪一个,因为我没有见过这两个账户共存的,哈哈,估计不能共存吧!这个市个人见解不代表Microsoft的意见)
    ----将所有的权限都赋予----确定。
     

    3.在“计算机管理”(哈哈,如果不知道怎么进入那就没办法说了)-----双击右侧的Administrators------将上一步搜索出来的账户添加进去。

    4.重新启动IIS即可。可以在“运行”中输入“IISRESET”。
     
    注意:上面这些是设置权限方面的,如果配置完上面这些报ORA-12154的错误,需要在服务器上配置“Net Configuration Assistant”。
     
    测试的环境:Win2003(NTFS)+Oracle9.2+Vs.net2005

    方法2:

    1.一定要关闭Windows 防火墙

        2.找到ORACLE_HOME文件夹(服务器端是D:\oracle)。点击右键,选属性--安全,在组或用户栏中选“Authenticated Users”,在权限列表中把“读取和运行”的权限去掉,再按应用(据说这是Oracle的一个Bug,在9i版本中也存在);重新选上“读取和运行”权限,点击应用;选权限框下面的“高级”按钮,确认
    “Authenticated Users”后面的应用于是“该文件夹、子文件夹及文件”,按确定把权限的更改应用于该文件夹;



       3.重新启动计算机,让权限设置生效(也可以不重新启动,在运行里运行cmd打开命令窗口,运行命令iisreset,重启下IIS,就可以正常访问);


        4.最后客户端如果还不能访问,(我客户端用的是VS2005,用的是其内置的IIS测试代码)重新启动VS2005即可。

  • 相关阅读:
    MySQL锁之三:MySQL的共享锁与排它锁编码演示
    服务链路追踪(Spring Cloud Sleuth)
    服务网关zuul之四:zuul网关配置
    hdu 1505 City Game (hdu1506加强版)
    PHP设计模式——訪问者模式
    极客互联网电视不是噱头,用户体验成创维G7200核心竞争力
    深入理解JavaScript系列(23):JavaScript与DOM(上)——也适用于新手
    使用php分页类实现简单分类
    管理之路(四)
    poj 2485 Highways (最小生成树)
  • 原文地址:https://www.cnblogs.com/Mr_JinRui/p/1787829.html
Copyright © 2020-2023  润新知