zoukankan      html  css  js  c++  java
  • 解决“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本”

    在用VS.NET2005+Oracle9.2进行开发的时候,在本地测试可以通过,但是在服务器上不能实现(复制网站,发布网站都不行),报错的具体内容,没记下来,大概就是:
    "System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本"
    在网上查询了很长时间也没有见效,后来综合网上的很多方法,终于测试成功,现分享一下。
    出错的原因:
    1.虽然报的是需要安装客户端8.1.7及以上版本但是并非这个,而是.net账户没有访问Oraclein文件夹的权限
    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 防火墙;(博主注:博主环境是Win8.1+Oracle10.2,可以不用关闭防火墙)

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

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

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

  • 相关阅读:
    Linux监控内核SNMP计数器
    wireshark使用手册
    【LinuxShell】echo用法详解
    【Coredump】调试之旅
    汇编指令
    从零开始学Java (五)条件选择
    从零开始学Java (四)输入输出
    Dart基础
    树相关
    递归简介
  • 原文地址:https://www.cnblogs.com/gdg87813/p/11813376.html
Copyright © 2011-2022 走看看